aboutsummaryrefslogtreecommitdiffhomepage
path: root/parsing/g_vernac.ml4
diff options
context:
space:
mode:
authorGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2009-12-07 15:24:13 +0000
committerGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2009-12-07 15:24:13 +0000
commit35159e8aa9bf33b4882bc7f17c2e363f769624c7 (patch)
treeb4791a8db7bcc1369025b1d261dc6d2a6301278c /parsing/g_vernac.ml4
parent78ad7ad114f3872c3e1c48e8427bee1351c25962 (diff)
No more specific syntax "Include Self" for inclusion of partially-applied functors
For Module F(X:SIG), making now a Include F will try to find the X fields in the current context, just as was doing earlier Include Self F. This specific syntax is removed, freeing the keyword "Self". Anyway, with the use of the syntax "<+" there was already hardly any need for syntax "Include Self". Idem for Include Type. Beware that a typo such as "Include F" instead of "Include F G" will produce a different message now, about a missing field instead of a not-enough-applied functor. By the way, some code clean-up and factorisation of inner recursive functions in declaremods.ml. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12566 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'parsing/g_vernac.ml4')
-rw-r--r--parsing/g_vernac.ml48
1 files changed, 2 insertions, 6 deletions
diff --git a/parsing/g_vernac.ml4 b/parsing/g_vernac.ml4
index 54cf671cc..89d06d2dd 100644
--- a/parsing/g_vernac.ml4
+++ b/parsing/g_vernac.ml4
@@ -396,13 +396,9 @@ GEXTEND Gram
| IDENT "Import"; qidl = LIST1 global -> VernacImport (false,qidl)
| IDENT "Export"; qidl = LIST1 global -> VernacImport (true,qidl)
| IDENT "Include"; e = module_expr; l = LIST0 ext_module_expr ->
- VernacInclude(false,CIME(e,l))
+ VernacInclude(CIME(e::l))
| IDENT "Include"; "Type"; e = module_type; l = LIST0 ext_module_type ->
- VernacInclude(false,CIMTE(e,l))
- | IDENT "Include"; "Self"; e = module_expr ->
- VernacInclude(true,CIME(e,[]))
- | IDENT "Include"; "Self"; "Type"; e = module_type ->
- VernacInclude(true,CIMTE(e,[])) ] ]
+ VernacInclude(CIMTE(e::l)) ] ]
;
export_token:
[ [ IDENT "Import" -> Some false