Closed ziman closed 9 years ago
If I change record A
to data A
(and leave B
as record), the file still does not typecheck. If I change record B
to data B
(and leave A
as record), the file typechecks successfully.
My guess is that they're not respecting the EWhen flag in the mutual block elaborator, which causes the formation rules to be generated in one pass and the constructors/projections in another.
This code
does not typecheck, yielding the following message:
However, when I change the definition to use
data
instead ofrecord
, everything works fine.The whole code: http://lpaste.net/2012644708815208448