ProtoObject and comparison for equality and ordering
Mike Franklin
slavo5150 at yahoo.com
Fri May 17 00:30:41 UTC 2019
On Thursday, 16 May 2019 at 14:41:09 UTC, Steven Schveighoffer
wrote:
> That's beside the point. You shouldn't call a non-const
> function on something that is const *or* immutable. Which is
> what druntime is currently doing.
I'd be interested in knowing more about this. Would you be
willing to show me the specific function where this is occurring?
I've been working over the past few years to learn how to convert
many runtime hooks to templates, and in that process I've
discovered that the runtime hooks are not abiding by their
contracts.
The runtime hooks are added to the binary in e2ir.d which is
after the semantic phase, so purity, safety, throwability, etc...
is not enforced. For example, code in a `pure` function is
lowered to an impure runtime hook, and the compiler doesn't catch
it. Is that what's going on here as well?
Mike
More information about the Digitalmars-d
mailing list