aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--interp/constrextern.ml5
-rwxr-xr-xlibrary/nametab.ml4
-rwxr-xr-xlibrary/nametab.mli2
-rw-r--r--parsing/prettyp.ml8
4 files changed, 11 insertions, 8 deletions
diff --git a/interp/constrextern.ml b/interp/constrextern.ml
index a3c2a0447..1430bdace 100644
--- a/interp/constrextern.ml
+++ b/interp/constrextern.ml
@@ -1333,7 +1333,8 @@ and extern_symbol_pattern (tmp_scope,scopes as allscopes) vars t = function
subst in
insert_pat_delimiters (make_pat_notation loc ntn l) key)
| SynDefRule kn ->
- CPatAtom (loc,Some (Qualid (loc, shortest_qualid_of_syndef kn)))
+ let qid = shortest_qualid_of_syndef vars kn in
+ CPatAtom (loc,Some (Qualid (loc, qid)))
with
No_match -> extern_symbol_pattern allscopes vars t rules
@@ -1747,7 +1748,7 @@ and extern_symbol (tmp_scope,scopes as allscopes) vars t = function
subst in
insert_delimiters (make_notation loc ntn l) key)
| SynDefRule kn ->
- CRef (Qualid (loc, shortest_qualid_of_syndef kn)) in
+ CRef (Qualid (loc, shortest_qualid_of_syndef vars kn)) in
if args = [] then e
else
(* TODO: compute scopt for the extra args, in case, head is a ref *)
diff --git a/library/nametab.ml b/library/nametab.ml
index ddd06c0c2..e4a8ee995 100755
--- a/library/nametab.ml
+++ b/library/nametab.ml
@@ -472,9 +472,9 @@ let shortest_qualid_of_global ctx ref =
let sp = Globrevtab.find (TrueGlobal ref) !the_globrevtab in
SpTab.shortest_qualid ctx sp !the_ccitab
-let shortest_qualid_of_syndef kn =
+let shortest_qualid_of_syndef ctx kn =
let sp = sp_of_syntactic_definition kn in
- SpTab.shortest_qualid Idset.empty sp !the_ccitab
+ SpTab.shortest_qualid ctx sp !the_ccitab
let shortest_qualid_of_module mp =
let dir = MPmap.find mp !the_modrevtab in
diff --git a/library/nametab.mli b/library/nametab.mli
index 81e7c6166..2f6e9e8cb 100755
--- a/library/nametab.mli
+++ b/library/nametab.mli
@@ -144,7 +144,7 @@ val full_name_module : qualid -> dir_path
val sp_of_syntactic_definition : kernel_name -> section_path
val shortest_qualid_of_global : Idset.t -> global_reference -> qualid
-val shortest_qualid_of_syndef : kernel_name -> qualid
+val shortest_qualid_of_syndef : Idset.t -> kernel_name -> qualid
val shortest_qualid_of_tactic : ltac_constant -> qualid
val dir_of_mp : module_path -> dir_path
diff --git a/parsing/prettyp.ml b/parsing/prettyp.ml
index 13d6a62b4..5092601fb 100644
--- a/parsing/prettyp.ml
+++ b/parsing/prettyp.ml
@@ -203,8 +203,10 @@ let print_located_qualid ref =
let (loc,qid) = qualid_of_reference ref in
let module N = Nametab in
let expand = function
- | TrueGlobal ref -> Term ref, N.shortest_qualid_of_global Idset.empty ref
- | SyntacticDef kn -> Syntactic kn, N.shortest_qualid_of_syndef kn in
+ | TrueGlobal ref ->
+ Term ref, N.shortest_qualid_of_global Idset.empty ref
+ | SyntacticDef kn ->
+ Syntactic kn, N.shortest_qualid_of_syndef Idset.empty kn in
match List.map expand (N.extended_locate_all qid) with
| [] ->
let (dir,id) = repr_qualid qid in
@@ -352,7 +354,7 @@ let print_constant_with_infos sp =
let print_inductive sp = (print_mutual sp)
let print_syntactic_def sep kn =
- let qid = Nametab.shortest_qualid_of_syndef kn in
+ let qid = Nametab.shortest_qualid_of_syndef Idset.empty kn in
let c = Syntax_def.search_syntactic_definition dummy_loc kn in
(str (if !Options.v7 then "Syntactic Definition " else "Notation ")
++ pr_qualid qid ++ str sep ++