@@ -58,12 +58,14 @@ let fresh_env () =
5858 env, sigma
5959
6060let to_constr_evars sigma c = EConstr.to_constr ~abort_on_undefined_evars:false sigma c
61+
62+ let poly_ind = poly PolyFlags.Inductive
6163}
6264
6365(** ********* Commands ********* *)
6466
6567VERNAC COMMAND EXTEND TemplateRocq_Test_Quote CLASSIFIED AS QUERY STATE program
66- | #[ poly = polymorphic ] [ "MetaRocq" "Test" "Quote" constr(def) ] ->
68+ | #[ poly = poly_def ] [ "MetaRocq" "Test" "Quote" constr(def) ] ->
6769 { fun ~pm -> let (env, evm) = fresh_env () in
6870 let (evm, def) = Constrintern.interp_open_constr env evm def in
6971 let (evm, pgm) = EConstr.fresh_global env evm (Lazy.force Template_monad.ptmTestQuote) in
@@ -73,7 +75,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Test_Quote CLASSIFIED AS QUERY STATE program
7375END
7476
7577VERNAC COMMAND EXTEND TemplateRocq_Quote_Definition CLASSIFIED AS SIDEFF STATE program
76- | #[ poly = polymorphic ] [ "MetaRocq" "Quote" "Definition" ident(name) ":=" constr(def) ] ->
78+ | #[ poly = poly_def ] [ "MetaRocq" "Quote" "Definition" ident(name) ":=" constr(def) ] ->
7779 { fun ~pm -> let (env, evm) = fresh_env () in
7880 let (evm, def) = Constrintern.interp_open_constr env evm def in
7981 let (evm, pgm) = EConstr.fresh_global env evm (Lazy.force Template_monad.ptmQuoteDefinition) in
@@ -83,7 +85,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Quote_Definition CLASSIFIED AS SIDEFF STATE p
8385END
8486
8587VERNAC COMMAND EXTEND TemplateRocq_Quote_Definition_Eval CLASSIFIED AS SIDEFF STATE program
86- | #[ poly = polymorphic ] [ "MetaRocq" "Quote" "Definition" ident(name) ":=" "Eval" red_expr(rd) "in" constr(def) ] ->
88+ | #[ poly = poly_def ] [ "MetaRocq" "Quote" "Definition" ident(name) ":=" "Eval" red_expr(rd) "in" constr(def) ] ->
8789 { fun ~pm -> let (env, evm) = fresh_env () in
8890 let (evm, def) = Constrintern.interp_open_constr env evm def in
8991 (* TODO : implem quoting of tactic reductions so that we can use ptmQuoteDefinitionRed *)
@@ -95,7 +97,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Quote_Definition_Eval CLASSIFIED AS SIDEFF ST
9597END
9698
9799VERNAC COMMAND EXTEND TemplateRocq_Quote_Recursively_Definition CLASSIFIED AS SIDEFF STATE program
98- | #[ poly = polymorphic ] [ "MetaRocq" "Quote" "Recursively" "Definition" ident(name) ":=" constr(def) ] ->
100+ | #[ poly = poly_def ] [ "MetaRocq" "Quote" "Recursively" "Definition" ident(name) ":=" constr(def) ] ->
99101 { fun ~pm -> let (env, evm) = fresh_env () in
100102 let (evm, def) = Constrintern.interp_open_constr env evm def in
101103 let (evm, pgm) = EConstr.fresh_global env evm (Lazy.force Template_monad.ptmQuoteRecDefinition) in
@@ -105,7 +107,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Quote_Recursively_Definition CLASSIFIED AS SI
105107END
106108
107109VERNAC COMMAND EXTEND TemplateRocq_Test_Unquote CLASSIFIED AS QUERY STATE program
108- | #[ poly = polymorphic ] [ "MetaRocq" "Test" "Unquote" constr(def) ] ->
110+ | #[ poly = poly_def ] [ "MetaRocq" "Test" "Unquote" constr(def) ] ->
109111 { fun ~pm -> let (env, evm) = fresh_env () in
110112 let (evm, def) = Constrintern.interp_open_constr env evm def in
111113 let (evm, pgm) = EConstr.fresh_global env evm (Lazy.force Template_monad.ptmTestUnquote) in
@@ -115,7 +117,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Test_Unquote CLASSIFIED AS QUERY STATE progra
115117END
116118
117119VERNAC COMMAND EXTEND TemplateRocq_Make_Definition CLASSIFIED AS SIDEFF STATE program
118- | #[ poly = polymorphic ] [ "MetaRocq" "Unquote" "Definition" ident(name) ":=" constr(def) ] ->
120+ | #[ poly = poly_def ] [ "MetaRocq" "Unquote" "Definition" ident(name) ":=" constr(def) ] ->
119121 { fun ~pm -> let (env, evm) = fresh_env () in
120122 let (evm, def) = Constrintern.interp_open_constr env evm def in
121123 let (evm, pgm) = EConstr.fresh_global env evm (Lazy.force Template_monad.ptmMkDefinition) in
@@ -126,7 +128,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Make_Definition CLASSIFIED AS SIDEFF STATE pr
126128END
127129
128130VERNAC COMMAND EXTEND TemplateRocq_Make_Inductive CLASSIFIED AS SIDEFF STATE program
129- | #[ poly = polymorphic ] [ "MetaRocq" "Unquote" "Inductive" constr(def) ] ->
131+ | #[ poly = poly_ind ] [ "MetaRocq" "Unquote" "Inductive" constr(def) ] ->
130132 { fun ~pm -> let (env, evm) = fresh_env () in
131133 let (evm, def) = Constrintern.interp_open_constr env evm def in
132134 let (evm, pgm) = EConstr.fresh_global env evm (Lazy.force Template_monad.ptmMkInductive) in
@@ -136,7 +138,7 @@ VERNAC COMMAND EXTEND TemplateRocq_Make_Inductive CLASSIFIED AS SIDEFF STATE pro
136138END
137139
138140VERNAC COMMAND EXTEND TemplateRocq_Run_Template_Program CLASSIFIED AS SIDEFF STATE program
139- | #[ poly = polymorphic ] [ "MetaRocq" "Run" constr(def) ] ->
141+ | #[ poly = poly_def ] [ "MetaRocq" "Run" constr(def) ] ->
140142 { fun ~pm -> let (env, evm) = fresh_env () in
141143 let (pgm, ctx) = Constrintern.interp_constr env evm def in
142144 let evm = Evd.from_ctx ctx in
0 commit comments