From d288152f7d886ca6dba3944d20c6ca21452533da Mon Sep 17 00:00:00 2001 From: herbelin Date: Tue, 20 Mar 2012 13:59:03 +0000 Subject: Continuing r15045-15046 and r15055 (fixing bug #2732 about atomic tactic arguments of ltac functions). Added support for recursive entries in ARGUMENT EXTEND, for right-hand sides of ARGUMENT EXTEND raising exceptions and for right-hand sides referring to "loc". Also fixed parsing level of initial value in create_arg (raw instead of glob). Thanks to the Ssreflect plugin for revealing these problems. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@15065 85f007b7-540e-0410-9357-904b9bb8a0f7 --- interp/notation.ml | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'interp/notation.ml') diff --git a/interp/notation.ml b/interp/notation.ml index 96de08da3a..397f46fc42 100644 --- a/interp/notation.ml +++ b/interp/notation.ml @@ -818,3 +818,8 @@ let _ = { freeze_function = freeze; unfreeze_function = unfreeze; init_function = init } + +let with_notation_protection f x = + let fs = freeze () in + try let a = f x in unfreeze fs; a + with e -> unfreeze fs; raise e -- cgit v1.2.3