diff --git a/dmd/idgen.c b/dmd/idgen.c index 7841dc59..0e042e13 100644 --- a/dmd/idgen.c +++ b/dmd/idgen.c @@ -229,6 +229,7 @@ Msgtable msgtable[] = { "no_typeinfo" }, { "no_moduleinfo" }, { "Alloca", "alloca" }, + { "Shufflevector", "shufflevector" }, { "vastart", "va_start" }, { "vacopy", "va_copy" }, { "vaend", "va_end" }, diff --git a/gen/toir.cpp b/gen/toir.cpp index 37e4a200..77e17f78 100644 --- a/gen/toir.cpp +++ b/gen/toir.cpp @@ -954,7 +954,7 @@ DValue* CallExp::toElem(IRState* p) for(int i = 2, n = arguments->dim; i < n; i++){ Expression* exp = static_cast(arguments->data[i]); if(exp->op != TOKint64){ - error("Function %s was declared with pragma shufflevector. Because of that all of its arguments except the first two must be integer literals.", f->toChars()); + error("Function %s was declared with pragma shufflevector. Because of that all of its arguments except the first two must be integer literals.", fndecl->toChars()); fatal(); } IntegerExp* iexp = static_cast(arguments->data[i]);