is(stuff == module) and is(stuff == package) raise an error if "stuff" is an unknown symbol. All other non-type checks (e.g. stuff == class) simply evaluate to false because the spec only requires "stuff" to be syntactically valid.
@MoonlightSentinel created dlang/dmd pull request #10621 "Fix Issue 20419 - is(missing == module/package) results in unknown id…" fixing this issue: - Fix Issue 20419 - is(missing == module/package) results in unknown identifier is(missing == module) and is(missing == package) raised an error for missing identifiers, violating the language specification wich only requires the identifier to be syntactically valid. https://github.com/dlang/dmd/pull/10621
dlang/dmd pull request #10621 "Fix Issue 20419 - is(missing == module/package) results in unknown id…" was merged into master: - 09037a8641f942b6248f503b48c1a1c382159412 by MoonlightSentinel: Fix Issue 20419 - is(missing == module/package) results in unknown identifier is(missing == module) and is(missing == package) raised an error for missing identifiers, violating the language specification wich only requires the identifier to be syntactically valid. https://github.com/dlang/dmd/pull/10621
dlang/dmd pull request #12350 "[dmd-cxx] More fixes for package import visibility" was merged into dmd-cxx: - f155716b9c8091bf4ccf73473dd0f1219a9bf16d by MoonlightSentinel: [dmd-cxx] Fix Issue 20419 - is(missing == module/package) results in unknown identifier https://github.com/dlang/dmd/pull/12350