[Issue 19656] D compiler fails to resolve circular module dependency when modules are compiled separately

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Mar 18 11:23:25 UTC 2019


https://issues.dlang.org/show_bug.cgi?id=19656

--- Comment #5 from Dlang Bot <dlang-bot at dlang.rocks> ---
@puneet created dlang/dmd pull request #9462 "Fix for issue 19656" mentioning
this issue:

- Fix for issue 19656

  When DMD encounters an associative array with a class type (say Foo)
  specified as key, the compiler immediately wants to analyze the Foo
  class. And in some cases it might so happen that DMD was already in
  the process of analyzing Foo. In such a scenario, the
  visit(ClassDeclaration ) method malfunctions and marks Foo with
  PASS.semanticdone without actually completing analysis of the
  class. Since this method marks a ongoing call with setting _scope to
  null, this situation can be avoided by testing _scope for Foo before
  calling the dsymbolSemantic method. This makes sure that if semantic
  analysis for Foo is already running, it would not be run again.

https://github.com/dlang/dmd/pull/9462

--


More information about the Digitalmars-d-bugs mailing list