Comment # 2
on bug 108
from Iain Buclaw
Looks like the frontend devs changed the behaviours of optimize/interpret,
again. This'll need adding to the testsuite to catch any future changes.
*PATCH*
diff --git a/gcc/d/d-codegen.cc b/gcc/d/d-codegen.cc
index b0a50a4..a7acb92 100644
--- a/gcc/d/d-codegen.cc
+++ b/gcc/d/d-codegen.cc
@@ -830,8 +826,10 @@ build_attributes (Expressions *in_attrs)
for (size_t i = 0; i < in_attrs->dim; i++)
{
Expression *attr = (*in_attrs)[i]->optimize (WANTexpand);
- Dsymbol *sym = attr->type->toDsymbol (0);
+ if (attr->op == TOKcall)
+ attr = attr->ctfeInterpret();
+ Dsymbol *sym = attr->type->toDsymbol (0);
if (!sym)
continue;