aboutsummaryrefslogtreecommitdiffhomepage
path: root/grammar
diff options
context:
space:
mode:
Diffstat (limited to 'grammar')
-rw-r--r--grammar/q_util.ml43
-rw-r--r--grammar/q_util.mli2
-rw-r--r--grammar/tacextend.ml45
3 files changed, 5 insertions, 5 deletions
diff --git a/grammar/q_util.ml4 b/grammar/q_util.ml4
index 53330429d..a9a339241 100644
--- a/grammar/q_util.ml4
+++ b/grammar/q_util.ml4
@@ -58,9 +58,6 @@ let mlexpr_of_option f = function
| None -> <:expr< None >>
| Some e -> <:expr< Some $f e$ >>
-let mlexpr_of_ident id =
- <:expr< Names.Id.of_string $str:id$ >>
-
let symbol_of_string s = <:expr< Extend.Atoken (CLexer.terminal $str:s$) >>
let rec mlexpr_of_prod_entry_key f = function
diff --git a/grammar/q_util.mli b/grammar/q_util.mli
index a34fc0bcb..9b6f11827 100644
--- a/grammar/q_util.mli
+++ b/grammar/q_util.mli
@@ -41,8 +41,6 @@ val mlexpr_of_string : string -> MLast.expr
val mlexpr_of_option : ('a -> MLast.expr) -> 'a option -> MLast.expr
-val mlexpr_of_ident : string -> MLast.expr
-
val mlexpr_of_prod_entry_key : (string -> MLast.expr) -> user_symbol -> MLast.expr
val type_of_user_symbol : user_symbol -> argument_type
diff --git a/grammar/tacextend.ml4 b/grammar/tacextend.ml4
index 19b6e1b5f..4c4ecaf73 100644
--- a/grammar/tacextend.ml4
+++ b/grammar/tacextend.ml4
@@ -18,6 +18,11 @@ let dloc = <:expr< Loc.ghost >>
let plugin_name = <:expr< __coq_plugin_name >>
+let mlexpr_of_ident id =
+ (** Workaround for badly-designed generic arguments lacking a closure *)
+ let id = "$" ^ id in
+ <:expr< Names.Id.of_string_soft $str:id$ >>
+
let rec make_patt = function
| [] -> <:patt< [] >>
| ExtNonTerminal (_, p) :: l ->