aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorherbelin2004-03-17 18:43:08 +0000
committerherbelin2004-03-17 18:43:08 +0000
commit3c2ea830b54564310342bc88376e66281d0b4bde (patch)
treebfeb1109bd6a181b7bb6ce98358de676ee442c31
parentad4c5a227ba70f01a4970767ccf69a7b79e16a39 (diff)
Hack pour traduction des changements non uniformes de syntaxe des TACTIC et VERNAC EXTEND (e.g. Hint Rewrite)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@5525 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--parsing/pptactic.ml7
-rw-r--r--translate/ppvernacnew.ml7
2 files changed, 14 insertions, 0 deletions
diff --git a/parsing/pptactic.ml b/parsing/pptactic.ml
index c2ef0f2884..41f7ba954c 100644
--- a/parsing/pptactic.ml
+++ b/parsing/pptactic.ml
@@ -404,6 +404,13 @@ let pr_extend_gen prgen s l =
in
try
let tags = List.map genarg_tag l in
+ (* Hack pour les syntaxes changeant non uniformément en passant a la V8 *)
+ let s =
+ print_string s; flush stdout;
+ let n = String.length s in
+ if Options.do_translate() & n > 2 & String.sub s (n-2) 2 = "v7"
+ then String.sub s 0 (n-2) ^ "v8"
+ else s in
let (s,pl) = Hashtbl.find tab (s,tags) in
str s ++ pr_tacarg_using_rule prgen (pl,l)
with Not_found ->
diff --git a/translate/ppvernacnew.ml b/translate/ppvernacnew.ml
index adfddea7b4..c7b7acf57f 100644
--- a/translate/ppvernacnew.ml
+++ b/translate/ppvernacnew.ml
@@ -1057,6 +1057,13 @@ and pr_extend s cl =
try pr_gen (Global.env()) a
with Failure _ -> str ("<error in "^s^">") in
try
+ (* Hack pour les syntaxes changeant non uniformément en passant a la V8 *)
+ let s =
+ print_string s; flush stdout;
+ let n = String.length s in
+ if Options.do_translate() & n > 2 & String.sub s (n-2) 2 = "V7"
+ then String.sub s 0 (n-2) ^ "V8"
+ else s in
let rls = List.assoc s (Egrammar.get_extend_vernac_grammars()) in
let (hd,rl) = match_vernac_rule (List.map Genarg.genarg_tag cl) rls in
let (pp,_) =