diff options
| author | Hugo Herbelin | 2014-04-27 15:09:04 +0200 |
|---|---|---|
| committer | Hugo Herbelin | 2014-04-28 09:40:46 +0200 |
| commit | 5eb53b5bc8d765ed75e965f43f1084e18efc8790 (patch) | |
| tree | 31c87e5f8c9f6cff5f2277912240a2a2f565bc90 /kernel/declarations.mli | |
| parent | 6541e32be7018104c47ccad75ff41ffc750ff944 (diff) | |
Adding a field ci_cstr_nargs to case_info and mind_consnrealargs to
one_inductive_body so that when eta-expanding at "match" printing time
we know if a let is part of the expected signature or part of the
body.
This is an easy fix for bugs like #3293. Another fix could be to
enforce, as an invariant, or better syntactically, that
"match"/"Case"'s have the body of their branches expanded.
Diffstat (limited to 'kernel/declarations.mli')
| -rw-r--r-- | kernel/declarations.mli | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/declarations.mli b/kernel/declarations.mli index e6025790a3..1e94e243c0 100644 --- a/kernel/declarations.mli +++ b/kernel/declarations.mli @@ -110,6 +110,10 @@ type one_inductive_body = { (** Length of the signature of the constructors (with let, w/o params) (not used in the kernel) *) + mind_consnrealargs : int array; + (** Length of the signature of the constructors (w/o let, w/o params) + (not used in the kernel) *) + mind_recargs : wf_paths; (** Signature of recursive arguments in the constructors *) (** {8 Datas for bytecode compilation } *) |
