[m-rev.] for post-commit review: print more info for foreign types

Zoltan Somogyi zoltan.somogyi at runbox.com
Thu Jun 4 09:56:36 AEST 2015



On Mon, 01 Jun 2015 16:02:15 +0100, matthias.guedemann at googlemail.com (Matthias Güdemann) wrote:
> I agree, that arity would be helpful

That is trivial to do. However, since I expect that 0 will be
the most frequent arity by far, should it be printed only
if it ISN'T zero? And why would one want to know the arity
only, and not the identities of the argument types?

>  For the module qualification,
> would it be possible to limit to types which can be ambiguous?

Only at nontrivial expense.

When the compiler generates the runtime type information (RTTI)
that the debugger consults, it typically has access only to the one
module being compiled. Another module may also define a type
with the same name, but this may module may not be compiled
or even written when the first is compiled. Any check for whether
a type name is ambiguous or not therefore has to be done at link time
or run time. I don't know of a way to do it at link time. Doing it
at run time would require a check for whether it has already been done
every time when the answer to the ambiguity question is needed.

Another way to avoid unnecessary module qualification in some cases
would be to simply not add the module qualification if the module name
is the same as the type name.

Any opinions on what behavior would be most useful? (I don't have
any preference myself.)

Zoltan.





More information about the reviews mailing list