From d2025512b3fb357768d85ccde8e21f571481d00f Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Fri, 15 Mar 2019 13:37:07 +0000 Subject: re PR d/88990 (ICE in get_symbol_decl, at d/decl.cc:1097) PR d/88990 d/dmd: Merge upstream dmd 8d4c876c6 The extern storage class flag was wrongly propagated to function scope when starting the semantic pass on the body. Fixes https://gcc.gnu.org/PR88990 Reviewed-on: https://github.com/dlang/dmd/pull/9452 From-SVN: r269708 --- gcc/d/dmd/declaration.c | 1 + 1 file changed, 1 insertion(+) (limited to 'gcc/d/dmd/declaration.c') diff --git a/gcc/d/dmd/declaration.c b/gcc/d/dmd/declaration.c index 6372e39..835c6ae 100644 --- a/gcc/d/dmd/declaration.c +++ b/gcc/d/dmd/declaration.c @@ -2008,6 +2008,7 @@ bool VarDeclaration::isDataseg() else if (storage_class & (STCstatic | STCextern | STCtls | STCgshared) || parent->isModule() || parent->isTemplateInstance() || parent->isNspace()) { + assert(!isParameter() && !isResult()); isdataseg = 1; // It is in the DataSegment } } -- cgit v1.1