Got compiler crash in Mangler::mangleFuncType

Stefan Koch via Digitalmars-d digitalmars-d at puremagic.com
Sat Mar 25 01:24:04 PDT 2017


On Saturday, 25 March 2017 at 08:13:08 UTC, Uranuz wrote:
> On Saturday, 25 March 2017 at 07:57:11 UTC, Stefan Koch wrote:
>> [...]
>
> I just put debug messages on every `assert` and figured out it 
> fails on lines:
>                     bool implicit0 = (f.next.ty == Tvoid && 
> isMain());
>                     Type tret = implicit0 ? Type.tint32 : 
> f.next;
>                     assert(tret.ty != Tvoid);
>                     if (vresult || returnLabel)
>                         buildResultVar(scout ? scout : sc2, 
> tret);
> I really don't understand what it is... Now I cannot share 
> codebase easily. Seems that it fails on my programme `main` 
> function or near that, because compiler stack not so deep. 
> There is some check for isMain AFAIK... What is this about?

are you creating a function called main ?
that would be about the only time this would be triggered.


More information about the Digitalmars-d mailing list