Compare filename contents (case-sensitively on Windows too), not
the pointer - a static foreach loop repeatedly mixing in a mixin
may lead to multiple equivalent filenames (foo.d-mixin-<line>),
e.g., for test/runnable/test18880.d.
structLoc
extern (D) nothrow const @trusted pure nothrow @nogc
opEquals() / toHash() for AA key usage
Compare filename contents (case-sensitively on Windows too), not the pointer - a static foreach loop repeatedly mixing in a mixin may lead to multiple equivalent filenames (foo.d-mixin-<line>), e.g., for test/runnable/test18880.d.