[dmd-internals] [D-Programming-Language/dmd] 71b0fc: fix Issue 11718 - Unintended mangled names conflic...

GitHub noreply at github.com
Mon Dec 16 12:53:28 PST 2013


  Branch: refs/heads/master
  Home:   https://github.com/D-Programming-Language/dmd
  Commit: 71b0fce3a4f2849e82c9ba9972a65a6fee59d42f
      https://github.com/D-Programming-Language/dmd/commit/71b0fce3a4f2849e82c9ba9972a65a6fee59d42f
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2013-12-11 (Wed, 11 Dec 2013)

  Changed paths:
    M src/mangle.c
    M src/mtype.c
    M test/runnable/nested.d

  Log Message:
  -----------
  fix Issue 11718 - Unintended mangled names conflict of nested template structs

If a symbol has parent, the parent part of the mangled name should also be unique in each scopes.

Function symbols can have same identifiers in scope, so their parameters part must be always encoded in their mangled name to distinguish overloads.

When I fixed bug 9271, I had naturally expected that behavior. However sadly `mangle` function had had a bug.


  Commit: 95183bfb5265af56d5f03cbfdc8b59d9a7c47789
      https://github.com/D-Programming-Language/dmd/commit/95183bfb5265af56d5f03cbfdc8b59d9a7c47789
  Author: Walter Bright <walter at walterbright.com>
  Date:   2013-12-16 (Mon, 16 Dec 2013)

  Changed paths:
    M src/mangle.c
    M src/mtype.c
    M test/runnable/nested.d

  Log Message:
  -----------
  Merge pull request #2953 from 9rnsr/fix11718

[REG2.065a] Issue 11718 - Unintended mangled names conflict of nested template structs


Compare: https://github.com/D-Programming-Language/dmd/compare/475c5437525d...95183bfb5265


More information about the dmd-internals mailing list