[dmd-internals] [D-Programming-Language/dmd] f434a6: [Refactoring] Use semanticRun for aggregates

GitHub via dmd-internals dmd-internals at puremagic.com
Fri May 2 16:23:42 PDT 2014


  Branch: refs/heads/master
  Home:   https://github.com/D-Programming-Language/dmd
  Commit: f434a600d30f413cde368ee12170741ffed14aec
      https://github.com/D-Programming-Language/dmd/commit/f434a600d30f413cde368ee12170741ffed14aec
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2014-04-30 (Wed, 30 Apr 2014)

  Changed paths:
    M src/class.c
    M src/struct.c

  Log Message:
  -----------
  [Refactoring] Use semanticRun for aggregates

Reasons:
1. Currently used states have problems:
  - `members` and `symtab` would be NULL for opaque declaration
  - `sizeok` is not set for InterfaceDeclaration
2. We should catch the "the first called semantic" timing for some reasons


  Commit: 2bd8af6c0de7eda1561a285f62e2f13981cae26e
      https://github.com/D-Programming-Language/dmd/commit/2bd8af6c0de7eda1561a285f62e2f13981cae26e
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2014-04-30 (Wed, 30 Apr 2014)

  Changed paths:
    M src/class.c
    M src/mtype.c
    M src/struct.c

  Log Message:
  -----------
  [Refactoring] Consolidate forward reference handling between aggregates

- Find valid `scope` first
- Set parent before `type` semantic and its mangling calculation
- `parent` and `type` are necessary even for opaque declaration


  Commit: 5e2766974e85f1b3f62c4f4ac1e2a7727a20126e
      https://github.com/D-Programming-Language/dmd/commit/5e2766974e85f1b3f62c4f4ac1e2a7727a20126e
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2014-04-30 (Wed, 30 Apr 2014)

  Changed paths:
    M src/class.c
    M src/struct.c

  Log Message:
  -----------
  [Refactoring] Consolidate handling of protection, storage_class, and userAttributes

They should be applied even for opaque declaration


  Commit: 669e2e44964060b3ced3d5a2611fa14bad72f641
      https://github.com/D-Programming-Language/dmd/commit/669e2e44964060b3ced3d5a2611fa14bad72f641
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2014-04-30 (Wed, 30 Apr 2014)

  Changed paths:
    M src/class.c
    M src/struct.c

  Log Message:
  -----------
  [Refactorign] Consolidate `symtab`


  Commit: 77de1b5f78f48fae2595c4fa846dcf52f809c56c
      https://github.com/D-Programming-Language/dmd/commit/77de1b5f78f48fae2595c4fa846dcf52f809c56c
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2014-04-30 (Wed, 30 Apr 2014)

  Changed paths:
    M src/class.c
    M src/struct.c

  Log Message:
  -----------
  [Refactoring] Fix ungagSpeculative() position


  Commit: 9d2d7cca1fd2dedd2924974fa84319f763a2ec44
      https://github.com/D-Programming-Language/dmd/commit/9d2d7cca1fd2dedd2924974fa84319f763a2ec44
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2014-04-30 (Wed, 30 Apr 2014)

  Changed paths:
    M src/mars.c
    M test/compilable/compile1.d

  Log Message:
  -----------
  fix Issue 12555 - Incorrect error ungagging for speculatively instantiated class

`ungagSpeculative()` should do nothing for function local symbols.


  Commit: f219339525175203b7963eda895696f2ef9255fc
      https://github.com/D-Programming-Language/dmd/commit/f219339525175203b7963eda895696f2ef9255fc
  Author: Walter Bright <walter at walterbright.com>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M src/class.c
    M src/mars.c
    M src/mtype.c
    M src/struct.c
    M test/compilable/compile1.d

  Log Message:
  -----------
  Merge pull request #3514 from 9rnsr/refactor_ad

[Refactoring] Unify semantic analysis steps around aggregates


Compare: https://github.com/D-Programming-Language/dmd/compare/f2a529874a06...f21933952517


More information about the dmd-internals mailing list