August 20, 2014 [dmd-internals] [D-Programming-Language/dmd] 5b5945: fix Issue 13333 - Incorrect error ungagging during... | ||||
---|---|---|---|---|
| ||||
Attachments:
| Branch: refs/heads/master Home: https://github.com/D-Programming-Language/dmd Commit: 5b5945a818aca281844a3c029139abd98c08004d https://github.com/D-Programming-Language/dmd/commit/5b5945a818aca281844a3c029139abd98c08004d Author: k-hara <k.hara.pg@gmail.com> Date: 2014-08-19 (Tue, 19 Aug 2014) Changed paths: M src/template.c M test/runnable/template9.d Log Message: ----------- fix Issue 13333 - Incorrect error ungagging during the resolution of forward references Improve forward reference resolution in template instantiation with alias - Check needGagging in TemplateInstance::semantic2() - Set TemplateInstance::speculative if global.gag is set in semantic() Commit: 7866eec9cde276ca293aa6c1c9e818c3ab51c3f1 https://github.com/D-Programming-Language/dmd/commit/7866eec9cde276ca293aa6c1c9e818c3ab51c3f1 Author: k-hara <k.hara.pg@gmail.com> Date: 2014-08-19 (Tue, 19 Aug 2014) Changed paths: M src/declaration.c M test/runnable/template9.d Log Message: ----------- Check unsafe variable declaring is unnecessary for function local aggregate members It would cause unresolved forward reference because `TypeStruct::hasPointers()` requires the complete types of the fields. Commit: d1446b0bfb2d95320a214428a6d9fb1a2c603e9d https://github.com/D-Programming-Language/dmd/commit/d1446b0bfb2d95320a214428a6d9fb1a2c603e9d Author: k-hara <k.hara.pg@gmail.com> Date: 2014-08-19 (Tue, 19 Aug 2014) Changed paths: M src/template.c A test/fail_compilation/diag13333.d Log Message: ----------- Improve diagnostic in recursive template expansion Commit: 3993011abb7cad8c1301ac3e3106aa813dc7eab0 https://github.com/D-Programming-Language/dmd/commit/3993011abb7cad8c1301ac3e3106aa813dc7eab0 Author: k-hara <k.hara.pg@gmail.com> Date: 2014-08-19 (Tue, 19 Aug 2014) Changed paths: M src/template.c Log Message: ----------- [Refactoring] bool speculative Commit: 5038ab27c019a1be88515908aeebc655b02e4b5a https://github.com/D-Programming-Language/dmd/commit/5038ab27c019a1be88515908aeebc655b02e4b5a Author: k-hara <k.hara.pg@gmail.com> Date: 2014-08-19 (Tue, 19 Aug 2014) Changed paths: M src/clone.c M src/declaration.c M src/expression.c M src/mars.c M src/mars.h M src/mtype.c M src/struct.c M src/traits.c Log Message: ----------- [Refactoring] Remove global.speculativeGagging() By the improvement of recursive aliasing, we can simplify the concept to: "A template instantiation during errors gagged is 'speculative instantiation'". Commit: 78c3fd2965911d191fe05db91ef9d8a5fffd5638 https://github.com/D-Programming-Language/dmd/commit/78c3fd2965911d191fe05db91ef9d8a5fffd5638 Author: Walter Bright <walter@walterbright.com> Date: 2014-08-20 (Wed, 20 Aug 2014) Changed paths: M src/clone.c M src/declaration.c M src/expression.c M src/mars.c M src/mars.h M src/mtype.c M src/struct.c M src/template.c M src/traits.c A test/fail_compilation/diag13333.d M test/runnable/template9.d Log Message: ----------- Merge pull request #3878 from 9rnsr/fix13333 Issue 13333 - Incorrect error ungagging during the resolution of forward references Compare: https://github.com/D-Programming-Language/dmd/compare/6a8591f6151b...78c3fd296591 |
Copyright © 1999-2021 by the D Language Foundation