[dmd-internals] [D-Programming-Language/dmd] 5f84cf: [Refactoring] Sync template constraint processing ...

GitHub noreply at github.com
Wed Oct 2 10:07:44 PDT 2013


  Branch: refs/heads/master
  Home:   https://github.com/D-Programming-Language/dmd
  Commit: 5f84cf24c84216bf0d773b407c4223b27faf546c
      https://github.com/D-Programming-Language/dmd/commit/5f84cf24c84216bf0d773b407c4223b27faf546c
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2013-10-01 (Tue, 01 Oct 2013)

  Changed paths:
    M src/template.c

  Log Message:
  -----------
  [Refactoring] Sync template constraint processing between TemplateDeclaration::matchWithInstance and deduceFunctionTemplateMatch


  Commit: 209c0d4f6b058472559d9ed3b8076bddf1e2c1e5
      https://github.com/D-Programming-Language/dmd/commit/209c0d4f6b058472559d9ed3b8076bddf1e2c1e5
  Author: k-hara <k.hara.pg at gmail.com>
  Date:   2013-10-01 (Tue, 01 Oct 2013)

  Changed paths:
    M src/template.c
    M test/runnable/template9.d
    M test/runnable/xtest46.d

  Log Message:
  -----------
  fix Issue 10074 - segfault in dmd

>From 2.061, `deduceFunctionTemplate` has been using TemplateDeclaration::matchWithInstance to do IFTI more strictly.
However, `matchWithInstance` does not detect the recursive template instantiation inside template constraint, against `deduceFunctionTemplateMatch`.

Duplicate the detection mechanism into `matchWithInstance`.


  Commit: 457acb1e03257fbff3ad52477d44d0d08ebb2d3e
      https://github.com/D-Programming-Language/dmd/commit/457acb1e03257fbff3ad52477d44d0d08ebb2d3e
  Author: Walter Bright <walter at walterbright.com>
  Date:   2013-10-02 (Wed, 02 Oct 2013)

  Changed paths:
    M src/template.c
    M test/runnable/template9.d
    M test/runnable/xtest46.d

  Log Message:
  -----------
  Merge pull request #2613 from 9rnsr/fix10074

[REG2.061] Issue 10074 - segfault in dmd


Compare: https://github.com/D-Programming-Language/dmd/compare/cff3d4f1f49e...457acb1e0325


More information about the dmd-internals mailing list