ldc icon indicating copy to clipboard operation
ldc copied to clipboard

hitting assert(0) on mac os

Open gedaiu opened this issue 10 months ago • 4 comments

Hey, I'm trying to build a vibe.d app and it crashes here:

core.exception.AssertError@/Users/gedaiu/workspace/ldc/dmd/parsetimevisitor.d(20): Assertion failure
----------------
/tmp/ldc-20241231-7715-mkgqdh/ldc-1.40.0-src/runtime/druntime/src/core/exception.d:569 onAssertError [0x10083ccf3]
/tmp/ldc-20241231-7715-mkgqdh/ldc-1.40.0-src/runtime/druntime/src/core/exception.d:808 _d_assert [0x100899bf7]
/Users/gedaiu/workspace/ldc/dmd/parsetimevisitor.d:20 ParseTimeVisitor<ASTCodegen>::visit(Parameter*) [0x10001397f]
/Users/gedaiu/workspace/ldc/dmd/mtype.d:4354 Parameter::accept(Visitor*) [0x10003fd7f]
/Users/gedaiu/workspace/ldc/dmd/expressionsem.d:14145 dmd.expression.Expression dmd.expressionsem.expressionSemantic(dmd.expression.Expression, dmd.dscope.Scope*) [0x10003c5ff]
/Users/gedaiu/workspace/ldc/dmd/expressionsem.d:758 bool dmd.expressionsem.arrayExpressionSemantic(dmd.expression.Expression[], dmd.dscope.Scope*, bool) [0x1001e512b]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1938 DsymbolSemanticVisitor::visit(UserAttributeDeclaration*) [0x100009a1b]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:138 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(UserAttributeDeclaration*) [0x10000997b]
/Users/gedaiu/workspace/ldc/dmd/attrib.d:1151 UserAttributeDeclaration::accept(Visitor*) [0x100324c17]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:3612 void dmd.dsymbolsem.DsymbolSemanticVisitor.visit(dmd.dclass.ClassDeclaration).__lambda_L3612_C39!(dmd.dsymbol.Dsymbol).__lambda_L3612_C39(dmd.dsymbol.Dsymbol) [0x1002722b3]
/Users/gedaiu/workspace/ldc/dmd/dsymbol.d:111 void dmd.dsymbol.foreachDsymbol(dmd.root.array.Array!(dmd.dsymbol.Dsymbol).Array*, void delegate(dmd.dsymbol.Dsymbol)) [0x100065773]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:3612 DsymbolSemanticVisitor::visit(ClassDeclaration*) [0x10001123b]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:192 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(ClassDeclaration*) [0x10000edff]
/Users/gedaiu/workspace/ldc/dmd/dclass.d:958 ClassDeclaration::accept(Visitor*) [0x100042c47]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1987 void dmd.dsymbolsem.DsymbolSemanticVisitor.visit(dmd.dmodule.Module).__lambda_L1984_C35!(dmd.dsymbol.Dsymbol).__lambda_L1984_C35(dmd.dsymbol.Dsymbol) [0x10026bdfb]
/Users/gedaiu/workspace/ldc/dmd/dsymbol.d:111 void dmd.dsymbol.foreachDsymbol(dmd.root.array.Array!(dmd.dsymbol.Dsymbol).Array*, void delegate(dmd.dsymbol.Dsymbol)) [0x100065773]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1984 DsymbolSemanticVisitor::visit(Module*) [0x10000a013]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:154 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Module*) [0x100009e03]
/Users/gedaiu/workspace/ldc/dmd/dmodule.d:1245 Module::accept(Visitor*) [0x100199d1b]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1625 DsymbolSemanticVisitor::visit(Import*) [0x1000084f3]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:115 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Import*) [0x100007cf3]
/Users/gedaiu/workspace/ldc/dmd/dimport.d:181 Import::accept(Visitor*) [0x1002d16bf]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1987 void dmd.dsymbolsem.DsymbolSemanticVisitor.visit(dmd.dmodule.Module).__lambda_L1984_C35!(dmd.dsymbol.Dsymbol).__lambda_L1984_C35(dmd.dsymbol.Dsymbol) [0x10026bdfb]
/Users/gedaiu/workspace/ldc/dmd/dsymbol.d:111 void dmd.dsymbol.foreachDsymbol(dmd.root.array.Array!(dmd.dsymbol.Dsymbol).Array*, void delegate(dmd.dsymbol.Dsymbol)) [0x100065773]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1984 DsymbolSemanticVisitor::visit(Module*) [0x10000a013]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:154 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Module*) [0x100009e03]
/Users/gedaiu/workspace/ldc/dmd/dmodule.d:1245 Module::accept(Visitor*) [0x100199d1b]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1625 DsymbolSemanticVisitor::visit(Import*) [0x1000084f3]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:115 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Import*) [0x100007cf3]
/Users/gedaiu/workspace/ldc/dmd/dimport.d:181 Import::accept(Visitor*) [0x1002d16bf]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1987 void dmd.dsymbolsem.DsymbolSemanticVisitor.visit(dmd.dmodule.Module).__lambda_L1984_C35!(dmd.dsymbol.Dsymbol).__lambda_L1984_C35(dmd.dsymbol.Dsymbol) [0x10026bdfb]
/Users/gedaiu/workspace/ldc/dmd/dsymbol.d:111 void dmd.dsymbol.foreachDsymbol(dmd.root.array.Array!(dmd.dsymbol.Dsymbol).Array*, void delegate(dmd.dsymbol.Dsymbol)) [0x100065773]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1984 DsymbolSemanticVisitor::visit(Module*) [0x10000a013]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:154 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Module*) [0x100009e03]
/Users/gedaiu/workspace/ldc/dmd/dmodule.d:1245 Module::accept(Visitor*) [0x100199d1b]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1625 DsymbolSemanticVisitor::visit(Import*) [0x1000084f3]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:115 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Import*) [0x100007cf3]
/Users/gedaiu/workspace/ldc/dmd/dimport.d:181 Import::accept(Visitor*) [0x1002d16bf]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1987 void dmd.dsymbolsem.DsymbolSemanticVisitor.visit(dmd.dmodule.Module).__lambda_L1984_C35!(dmd.dsymbol.Dsymbol).__lambda_L1984_C35(dmd.dsymbol.Dsymbol) [0x10026bdfb]
/Users/gedaiu/workspace/ldc/dmd/dsymbol.d:111 void dmd.dsymbol.foreachDsymbol(dmd.root.array.Array!(dmd.dsymbol.Dsymbol).Array*, void delegate(dmd.dsymbol.Dsymbol)) [0x100065773]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1984 DsymbolSemanticVisitor::visit(Module*) [0x10000a013]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:154 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Module*) [0x100009e03]
/Users/gedaiu/workspace/ldc/dmd/dmodule.d:1245 Module::accept(Visitor*) [0x100199d1b]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1625 DsymbolSemanticVisitor::visit(Import*) [0x1000084f3]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:115 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Import*) [0x100007cf3]
/Users/gedaiu/workspace/ldc/dmd/dimport.d:181 Import::accept(Visitor*) [0x1002d16bf]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1987 void dmd.dsymbolsem.DsymbolSemanticVisitor.visit(dmd.dmodule.Module).__lambda_L1984_C35!(dmd.dsymbol.Dsymbol).__lambda_L1984_C35(dmd.dsymbol.Dsymbol) [0x10026bdfb]
/Users/gedaiu/workspace/ldc/dmd/dsymbol.d:111 void dmd.dsymbol.foreachDsymbol(dmd.root.array.Array!(dmd.dsymbol.Dsymbol).Array*, void delegate(dmd.dsymbol.Dsymbol)) [0x100065773]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:1984 DsymbolSemanticVisitor::visit(Module*) [0x10000a013]
/Users/gedaiu/workspace/ldc/driver/timetrace_sema.d:154 SemanticTimeTraceVisitor<DsymbolSemanticVisitor*>::visit(Module*) [0x100009e03]
/Users/gedaiu/workspace/ldc/dmd/dmodule.d:1245 Module::accept(Visitor*) [0x100199d1b]
/Users/gedaiu/workspace/ldc/dmd/dsymbolsem.d:96 void dmd.dsymbolsem.dsymbolSemantic(dmd.dsymbol.Dsymbol, dmd.dscope.Scope*) [0x10004bae7]
/Users/gedaiu/workspace/ldc/dmd/main.d:643 mars_tryMain(Param&, Array<char const*>&) [0x1001800e3]
/Users/gedaiu/workspace/ldc/driver/main.cpp:1232 cppmain() [0x10062d547]
/Users/gedaiu/workspace/ldc/driver/main.d:27 _Dmain [0x1000248b7]
Process 91478 exited with status = 1 (0x00000001)
    void visit(AST.Parameter) { assert(0); }

gedaiu avatar Mar 03 '25 21:03 gedaiu

We need to know more about what code you are compiling to do anything about it.

JohanEngelen avatar Mar 03 '25 22:03 JohanEngelen

This is the project that I am trying to build: https://gitlab.com/GISCollective/backend/ogm-server

gedaiu avatar Mar 03 '25 22:03 gedaiu

(Call stack all in the frontend, so most likely an upstream DMD issue.)

kinke avatar Mar 03 '25 23:03 kinke

This is interesting, because the same project builds fine on Linux with the latest DMD and LDC compilers.

gedaiu avatar Mar 04 '25 08:03 gedaiu