aboutsummaryrefslogtreecommitdiff
path: root/plugins/romega
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2016-03-18 01:39:32 +0100
committerPierre-Marie Pédrot2016-03-18 01:39:32 +0100
commitb4b98349d03c31227d0d86a6e3acda8c3cd5212c (patch)
tree9e4d24d9bf13dbdeaf53dcfc025604f09890b078 /plugins/romega
parente3e8a4065047e254f5f5c2747227db75f01b7bed (diff)
parentf8f1f9d38bf2d35b0dc69fbf2e8ebbfc04b1a82d (diff)
Rationalizing the use of the various EXTEND macros.
Those macros used to handle in a special way the grammar entries and generic arguments known statically from Coq, i.e. defined before Pcoq. This was hardly predictible and very implementation-dependent. We made the EXTEND macros much more light-weight by treating in a uniform way all entries and arguments. Now, they are all produced by outputing the name as-is for entries and as "wit_$name" for genargs, thus letting the scope of the ML code decide which entrie is going to be taken. This is documented in the dev/ changelog. This also allows to get rid of a lot of dependencies in the grammar preprocessor, reducing it to a small functional shell. It is still depending on Compat, but it is most probably possible to reduce the code size even more.
Diffstat (limited to 'plugins/romega')
-rw-r--r--plugins/romega/g_romega.ml42
1 files changed, 2 insertions, 0 deletions
diff --git a/plugins/romega/g_romega.ml4 b/plugins/romega/g_romega.ml4
index 6b2b2bbfaf..61efa9f545 100644
--- a/plugins/romega/g_romega.ml4
+++ b/plugins/romega/g_romega.ml4
@@ -12,6 +12,8 @@ DECLARE PLUGIN "romega_plugin"
open Names
open Refl_omega
+open Constrarg
+open Pcoq.Prim
let eval_tactic name =
let dp = DirPath.make (List.map Id.of_string ["PreOmega"; "omega"; "Coq"]) in