aboutsummaryrefslogtreecommitdiffhomepage
path: root/library/declaremods.ml
diff options
context:
space:
mode:
authorGravatar Maxime Dénès <mail@maximedenes.fr>2014-12-25 18:13:16 +0100
committerGravatar Maxime Dénès <mail@maximedenes.fr>2014-12-25 19:20:44 +0100
commit6d5b56d971506dfadcfc824bfbb09dc21718e42b (patch)
treecb20ba0733f6480beaeb1a442668e7a6bf63d479 /library/declaremods.ml
parent0e326def6194606d0f1e21daeb45f32e1a061c8f (diff)
Forbid Require inside interactive modules and module types.
Fixes #3379 and part of #3363. Also avoids fragile code propagating required libraries when closing an interactive module. Had to fix a few occurrences in std lib.
Diffstat (limited to 'library/declaremods.ml')
-rw-r--r--library/declaremods.ml1
1 files changed, 1 insertions, 0 deletions
diff --git a/library/declaremods.ml b/library/declaremods.ml
index 33d37ef62..5c245064f 100644
--- a/library/declaremods.ml
+++ b/library/declaremods.ml
@@ -850,6 +850,7 @@ let library_values =
Summary.ref (Dirmap.empty : library_values Dirmap.t) ~name:"LIBVALUES"
let register_library dir cenv (objs:library_objects) digest univ =
+ assert (not (Lib.is_module_or_modtype ()));
let mp = MPfile dir in
let () =
try