Commit 87dda41e by Iain Buclaw

re PR d/90762 (ICE in resolvePropertiesX, at d/dmd/expression.c:251)

	PR d/90762
d/dmd: Merge upstream dmd b0cd59177

Fixes segmentation fault in resolvePropertiesX.

Reviewed-on: https://github.com/dlang/dmd/pull/10006

From-SVN: r272347
parent e5338b04
d912f4e495412b67f0a2e3b07f645909cfee0212 b0cd591770fefb4db6eaba89b7a548ef1e980f5c
The first line of this file holds the git revision number of the last The first line of this file holds the git revision number of the last
merge done from the dlang/dmd repository. merge done from the dlang/dmd repository.
...@@ -3492,12 +3492,18 @@ public: ...@@ -3492,12 +3492,18 @@ public:
} }
s->semantic(sc); s->semantic(sc);
Module::addDeferredSemantic2(s); // Bugzilla 14666 // https://issues.dlang.org/show_bug.cgi?id=19942
sc->insert(s); // If the module that's being imported doesn't exist, don't add it to the symbol table
// for the current scope.
for (size_t j = 0; j < s->aliasdecls.dim; j++) if (s->mod != NULL)
{ {
sc->insert(s->aliasdecls[j]); Module::addDeferredSemantic2(s); // Bugzilla 14666
sc->insert(s);
for (size_t j = 0; j < s->aliasdecls.dim; j++)
{
sc->insert(s->aliasdecls[j]);
}
} }
} }
result = imps; result = imps;
......
// REQUIRED_ARGS:
// This file is intended to contain all compilable traits-related tests in an
// effort to keep the number of files in the `compilable` folder to a minimum.
/******************************************/
// https://issues.dlang.org/show_bug.cgi?id=19942
static assert(!__traits(compiles, { a.init; }));
static assert(!__traits(compiles, { import m : a; a.init; }));
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment