I'm getting a strange compiler error when using alloca in my code. What's doubly strange is that I have 2 functions in the same file needing to call alloca for the same purpose. It seems to work fine in one of the functions, but uncommenting alloca in the other causes this cryptic error message to appear:

Internal error: eh.c 54

I believe it might be because the problematic function also creates structs on the stack. The following minimal example replicates the compiler error:

struct TheStruct
{
    ~this()
    {
    }
}

void bar()
{
}

void foo(IRInstr instr)
{
    auto s = TheStruct();

    bar();

    auto a = alloca(16);
}

Reply via email to