[m-rev.] for post-commit review: document requirement for non-abstract instances in interfaces

Zoltan Somogyi zoltan.somogyi at runbox.com
Thu Feb 3 11:06:30 AEDT 2022


For review by Julien.

Julien, you added the code to the compiler to enforce this requirement
in April 2005. The log message does not give the reason for the requirement.
The m-rev thread on that diff says that the requirement is in the reference manual,
but I have found no trace of that. If you happen to remember the reason
for this design decision, please modify reference_manual.texi to mention it.

Something that may bear on this is that .intN files have traditionally not
allowed any non-abstract instance declarations. However, this is not a valid
reason for banning them from .m files, since the code that decides what
should be put into .intN files has traditionally made any non-abstract
instance declarations into abstract declarations. The code that did this,
which has now been pretty completely rewritten, did not say whether
it considered non-abstract instance decls in interfaces to be an error
*in the source file*, or not.

Zoltan.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Log.naii
Type: application/octet-stream
Size: 581 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/reviews/attachments/20220203/7a479e8a/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: DIFF.naii
Type: application/octet-stream
Size: 6206 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/reviews/attachments/20220203/7a479e8a/attachment-0001.obj>


More information about the reviews mailing list