From c85dcc6c7fad63ea9b2b9e4e13ca18cf3335e193 Mon Sep 17 00:00:00 2001 From: herbelin Date: Thu, 4 Nov 2010 14:11:52 +0000 Subject: Fixing a regression wrt 8.2 when using an "ident" several times in a notation in different scopes (backport of r13613 from 8.3 to trunk). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13621 85f007b7-540e-0410-9357-904b9bb8a0f7 --- interp/constrintern.ml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/interp/constrintern.ml b/interp/constrintern.ml index 18fd16279f..0964370901 100644 --- a/interp/constrintern.ml +++ b/interp/constrintern.ml @@ -264,6 +264,9 @@ let set_var_scope loc id istermvar (_,_,scopt,scopes) ntnvars = try let idscopes,typ = List.assoc id ntnvars in if !idscopes <> None & + (* scopes have no effect on the interpretation of identifiers, hence + we can tolerate having a variable occurring several times in + different scopes: *) typ <> NtnInternTypeIdent & make_current_scope (Option.get !idscopes) <> make_current_scope (scopt,scopes) then error_inconsistent_scope loc id -- cgit v1.2.3