diff options
| author | Hugo Herbelin | 2015-02-19 15:00:57 +0100 |
|---|---|---|
| committer | Hugo Herbelin | 2015-02-19 15:00:57 +0100 |
| commit | b898ccc8660215ce80a280e51741eacae8a7525c (patch) | |
| tree | 4ae767e840ca90d9cfc3dcea4e2bbb62fa12796e /dev | |
| parent | 29ba692f0fd25ce87392bbb7494cb62e3b97dc07 (diff) | |
When looking for restrictions in ?n=?p problems, keep the type of let-bindings.
Bindings of the form [let x:T := M] are unfolded into [(M:T)], so that
occur-check is done in [T] as well as in [M] (except when [M] is a
variable, where it is hopefully not necessary).
This is a way to fix #4062 (evars with type depending on themselves).
The fix modifies the alias map (make_alias_map) but it should behave
the same at all places using alias maps other than
has_constrainable_free_vars.
Diffstat (limited to 'dev')
0 files changed, 0 insertions, 0 deletions
