[dmd-internals] [D-Programming-Language/dmd] 2131cb: Add AggregateDeclaration.checkOverlappedFields()

GitHub via dmd-internals dmd-internals at puremagic.com
Sun Sep 13 01:35:45 PDT 2015


  Branch: refs/heads/master
  Home:   https://github.com/D-Programming-Language/dmd
  Commit: 2131cb88cf06d0c48892fc4c997f18cdca0e10a4
      https://github.com/D-Programming-Language/dmd/commit/2131cb88cf06d0c48892fc4c997f18cdca0e10a4
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2015-09-12 (Sat, 12 Sep 2015)

  Changed paths:
    M src/aggregate.d
    M src/aggregate.h
    M src/dclass.d
    M src/dstruct.d
    M src/expression.d

  Log Message:
  -----------
  Add AggregateDeclaration.checkOverlappedFields()

- Extract that work from StructDeclaration.fill().
- Assume that `StructDeclaration.fill()` gets non-null `elements`.


  Commit: 81b811d67777f7babd07e853c8c157fbacffe195
      https://github.com/D-Programming-Language/dmd/commit/81b811d67777f7babd07e853c8c157fbacffe195
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2015-09-13 (Sun, 13 Sep 2015)

  Changed paths:
    M src/aggregate.d
    M src/aggregate.h
    M src/dstruct.d

  Log Message:
  -----------
  Add AggregateDeclaration.fill()


  Commit: 9004e821c14f13ec089e2965a8ee7ac3e4f5f52d
      https://github.com/D-Programming-Language/dmd/commit/9004e821c14f13ec089e2965a8ee7ac3e4f5f52d
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2015-09-13 (Sun, 13 Sep 2015)

  Changed paths:
    M src/todt.c

  Log Message:
  -----------
  Add membersToDt(AggregateDeclaration *ad, ...) and use it for both struct and class

Ccnsistently support overlapped union fields in compile-time generated objects.


  Commit: 069f570005c1e571f23cd046b0e89503e2553f70
      https://github.com/D-Programming-Language/dmd/commit/069f570005c1e571f23cd046b0e89503e2553f70
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2015-09-13 (Sun, 13 Sep 2015)

  Changed paths:
    M src/todt.c

  Log Message:
  -----------
  Add workaround for issue 9057, which is equivalent with the before

This is not a new workaround. In previous, the forward reference of struct instance fields had been resolved implicitly in  `sd->fields[i].getConstInitializer()`, via `sd->fill()`.


  Commit: c8c56038c1876b24a499e6728f8ae9c2088a80da
      https://github.com/D-Programming-Language/dmd/commit/c8c56038c1876b24a499e6728f8ae9c2088a80da
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2015-09-13 (Sun, 13 Sep 2015)

  Changed paths:
    M src/dinterpret.d
    M test/runnable/interpret.d

  Log Message:
  -----------
  fix Issue 14140 - Bad codegen for CTFE union initialisers for immutable structs


  Commit: 16969dcd711c82a49acf1f0afdc561fe83b5c859
      https://github.com/D-Programming-Language/dmd/commit/16969dcd711c82a49acf1f0afdc561fe83b5c859
  Author: Walter Bright <walter at walterbright.com>
  Date:   2015-09-13 (Sun, 13 Sep 2015)

  Changed paths:
    M src/aggregate.d
    M src/aggregate.h
    M src/dclass.d
    M src/dinterpret.d
    M src/dstruct.d
    M src/expression.d
    M src/todt.c
    M test/runnable/interpret.d

  Log Message:
  -----------
  Merge pull request #5050 from 9rnsr/fix14140

Issue 14140 - Bad codegen for CTFE union initialisers for immutable structs


Compare: https://github.com/D-Programming-Language/dmd/compare/ed85fedaaaf5...16969dcd711c


More information about the dmd-internals mailing list