mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-12 10:53:14 +01:00
Prevent cast error for cast(void) around expression statements.
Fixes: run/e/ExpressionStatement_10_A
This commit is contained in:
@@ -122,7 +122,14 @@ void ExpStatement::toIR(IRState* p)
|
||||
if (exp) {
|
||||
if (global.params.llvmAnnotate)
|
||||
DtoAnnotation(exp->toChars());
|
||||
elem* e = exp->toElem(p);
|
||||
elem* e;
|
||||
// a cast(void) around the expression is allowed, but doesn't require any code
|
||||
if(exp->op == TOKcast && exp->type == Type::tvoid) {
|
||||
CastExp* cexp = (CastExp*)exp;
|
||||
e = cexp->e1->toElem(p);
|
||||
}
|
||||
else
|
||||
e = exp->toElem(p);
|
||||
delete e;
|
||||
}
|
||||
/*elem* e = exp->toElem(p);
|
||||
|
||||
Reference in New Issue
Block a user