diff options
author | Emilio Jesus Gallego Arias <e+git@x80.org> | 2018-02-28 09:43:06 +0100 |
---|---|---|
committer | Maxime Dénès <mail@maximedenes.fr> | 2018-03-10 10:24:07 +0100 |
commit | 99129d2518bd9fe92051aa89138cbb57c839a270 (patch) | |
tree | c7185ce535ef7c5438e79f1c4b81464c8367d6c9 /plugins/ssr/ssrparser.mli | |
parent | 4d5c7243b4aea5b28358757e2d86c11334da6699 (diff) |
[ssreflect] Fix module scoping problems due to packing and mli files.
Unfortunately, mli-only files cannot be included in packs, so we have
the weird situation that the scope for `Tacexpr` is wrong. So we
cannot address the module as `Ltac_plugin.Tacexpr` but it lives in the
global namespace instead.
This creates problem when using other modular build/packing strategies
[such as #6857] This could be indeed considered a bug in the OCaml
compiler.
In order to remedy this situation we face two choices:
- leave the module out of the pack (!)
- create an implementation for the module
I chose the second solution as it seems to me like the most sensible
choice.
cc: #6512.
Diffstat (limited to 'plugins/ssr/ssrparser.mli')
-rw-r--r-- | plugins/ssr/ssrparser.mli | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/plugins/ssr/ssrparser.mli b/plugins/ssr/ssrparser.mli index 130550388..2ac7c7e26 100644 --- a/plugins/ssr/ssrparser.mli +++ b/plugins/ssr/ssrparser.mli @@ -10,6 +10,8 @@ (* This file is (C) Copyright 2006-2015 Microsoft Corporation and Inria. *) +open Ltac_plugin + val ssrtacarg : Tacexpr.raw_tactic_expr Pcoq.Gram.entry val wit_ssrtacarg : (Tacexpr.raw_tactic_expr, Tacexpr.glob_tactic_expr, Geninterp.Val.t) Genarg.genarg_type val pr_ssrtacarg : 'a -> 'b -> (Notation_term.tolerability -> 'c) -> 'c |