Martin Kinkelin

Results 756 comments of Martin Kinkelin

Thx for the report. This boils down to: ```D import core.stdc.config; void foo() { __c_complex_float x; x = typeof(x).init; // ICE - frontend incorrectly lowers it to the non-existent init...

The default template emission/culling strategy (try to link to guaranteed-existing instantiation in some imported module) is unpredictable and can cause such unexpected linking baggage. If you don't wanna use LTO...

Well it's been that way for ages, and there are ways to work around it in cases where it's a problem - `-allinst` to emit all instantiations in one of...

I've seen it hang on macOS arm64 too, but don't have the link to the log anymore. So far, I think I've really only seen it hang on FreeBSD and...

`keyti` here should be the TypeInfo of a TypeInfo, which is a `TypeInfo_Class`. And that `.equals()` casts the `void*` params to `Object`: https://github.com/dlang/dmd/blob/baee0d8080011ed357a0351ca1aebbb3c1abb41d/druntime/src/object.d#L1601-L1607 And that should then invoke `TypeInfo.opEquals()` that...

I suggest using LDC's `-link-defaultlib-debug` and stepping through it with a debugger.

Oh wow, now that's a huge and detailed write-up! :+1: Thx for letting us know; surely took some effort to get there, cool that you did.

Looking at *all* lambda symbols in the 2 object files, the regression is indeed that one lambda doesn't get the `_2` counter suffix anymore: ``` v2.110: _D4lang__T26createFunctionOverloadImplS_DQBn__T8AccessorTS3std8datetime4date4DateTSQDd__T8TypeMapsTSQDu__T13ParamTypeMapsS_DQEs14integerToUbyteFiZhZQBqZQClZQEf6__ctorMFZ20__lambda_L182_C45_14FNaNbNiNfsiEQFpQFoQFi9DayOfWeekZvZQIhFZ19__lambda_L115_C19_2FNaNbNiNfZb v2.111: _D4lang__T26createFunctionOverloadImplS_DQBn__T8AccessorTS3std8datetime4date4DateTSQDd__T8TypeMapsTSQDu__T13ParamTypeMapsS_DQEs14integerToUbyteFiZhZQBqZQClZQEf6__ctorMFZ20__lambda_L182_C45_14FNaNbNiNfsiEQFpQFoQFi9DayOfWeekZvZQIhFZ17__lambda_L115_C19FNaNbNiNfZb ```

With some printfs in the compiler, printing the `Key` fields: https://github.com/dlang/dmd/blob/d59f07518f4ef85af08d32a53724b16981932519/compiler/src/dmd/identifier.d#L251 ``` .: generateIdWithLoc: ../SIL/dustmite-lambda_mangles/source4/lang.d__lambda_L115_C19, __lambda, lang.createFunctionOverloadImpl!(function (short isoWeekYear, @(AliasSeq!(), AliasSeq!()) int isoWeek, DayOfWeek weekday) pure nothrow @nogc @safe {...