October 22, 2015 [dmd-internals] [D-Programming-Language/dmd] ac65fb: Improve code style for maintenability | ||||
---|---|---|---|---|
| ||||
Attachments:
| Branch: refs/heads/master Home: https://github.com/D-Programming-Language/dmd Commit: ac65fbb1d12be83c2384a459ebab1fb9c9ca71c8 https://github.com/D-Programming-Language/dmd/commit/ac65fbb1d12be83c2384a459ebab1fb9c9ca71c8 Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-20 (Tue, 20 Oct 2015) Changed paths: M src/declaration.d M src/dinterpret.d M src/expression.d M src/func.d M src/inline.d Log Message: ----------- Improve code style for maintenability - Too squashed code blocks hard to understand. - Too long condition lines are hard to read. Commit: 3606ede4836265a04986593a180c3e0f9b008c0b https://github.com/D-Programming-Language/dmd/commit/3606ede4836265a04986593a180c3e0f9b008c0b Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-20 (Tue, 20 Oct 2015) Changed paths: M src/e2ir.c M src/expression.d M src/expression.h Log Message: ----------- Add enum MemorySet and name flags for AssignExp Commit: 3224f462eacbcd2d1cab663ea2af1e46d8bfd6fd https://github.com/D-Programming-Language/dmd/commit/3224f462eacbcd2d1cab663ea2af1e46d8bfd6fd Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-20 (Tue, 20 Oct 2015) Changed paths: M src/dinterpret.d M src/e2ir.c M src/expression.d M src/expression.h M src/inline.d M test/runnable/inline.d Log Message: ----------- fix Issue 15207 - Wrong codegen with -inline When issue 14944 fixed, the ref variable content initializing form had been flagged by `MemorySet.refValueInit`. However, inilining may replace `AssignExp.e1` operand with a `STCref` temporary variable. When it happens, the `MemorySet.refValueInit` flag will be ignored in `AssignExp.toElem` and wrong code had generated. To avoid the issue, instead flag the case "ref varaible initialization" by `MemorySet.referenceInit`. Its meaning will be kept beyond inlining stage, and the bug won't happen. Commit: ab3497b681125a2b945d5fdbdedcc3abe60004fd https://github.com/D-Programming-Language/dmd/commit/ab3497b681125a2b945d5fdbdedcc3abe60004fd Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-20 (Tue, 20 Oct 2015) Changed paths: M src/e2ir.c M src/inline.d Log Message: ----------- Move STClazy variable assignment handling from inlining to glue layer Commit: ffb19cb00b0221f2f430f65546c2644497bb5f73 https://github.com/D-Programming-Language/dmd/commit/ffb19cb00b0221f2f430f65546c2644497bb5f73 Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-20 (Tue, 20 Oct 2015) Changed paths: M src/declaration.d M src/e2ir.c M src/expression.d M src/expression.h M src/func.d M src/inline.d Log Message: ----------- Reduce branches around the use of BlitExp and ConstructExp After this change, the frontend code for internal code generation would be simple: - If value assignment (construction) may need postblit call, use `ConstructExp`. - If bare memory copy is necessary, use `BlitExp`. Commit: cbe73499c1ec2ed4d3845d4240517227879f8f73 https://github.com/D-Programming-Language/dmd/commit/cbe73499c1ec2ed4d3845d4240517227879f8f73 Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-20 (Tue, 20 Oct 2015) Changed paths: M src/expression.d M src/expression.h M src/func.d M src/inline.d Log Message: ----------- Add convenient (Construct|Blit)Exp constructors for internal use A referernce variable initialization is not normally generated from source code. It's always introduced by internal AST generation or inlining. So, the ref variables handling is necessary only when the new convenient constructos used for them. Commit: 77463d7b0503a96d0ea367f5f29df15ed7655cad https://github.com/D-Programming-Language/dmd/commit/77463d7b0503a96d0ea367f5f29df15ed7655cad Author: Martin Nowak <code@dawg.eu> Date: 2015-10-21 (Wed, 21 Oct 2015) Changed paths: M src/declaration.d M src/dinterpret.d M src/e2ir.c M src/expression.d M src/expression.h M src/func.d M src/inline.d M test/runnable/inline.d Log Message: ----------- Merge pull request #5206 from 9rnsr/fix15207 [REG2.069.0-b1] Issue 15207 - Wrong codegen with -inline Commit: 34f10ecaea2a8a3d9dbb20d089bf63217e00ff92 https://github.com/D-Programming-Language/dmd/commit/34f10ecaea2a8a3d9dbb20d089bf63217e00ff92 Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-21 (Wed, 21 Oct 2015) Changed paths: M src/func.d M src/inline.d M test/runnable/inline.d Log Message: ----------- fix Issue 15210 - [ICE] (glue.c at 1489) with tuples and AAs Commit: 758e3fbcf7b67ec8f85f2e84c92987a6ecfbe91b https://github.com/D-Programming-Language/dmd/commit/758e3fbcf7b67ec8f85f2e84c92987a6ecfbe91b Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-21 (Wed, 21 Oct 2015) Changed paths: M src/aggregate.d M src/dclass.d M src/dstruct.d Log Message: ----------- Resurrect line spaces in dclass.d, dstruct.d, and aggregate.d Commit: 60c9ba49e3f7b1d8a9e1061e524f08a70447918d https://github.com/D-Programming-Language/dmd/commit/60c9ba49e3f7b1d8a9e1061e524f08a70447918d Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-21 (Wed, 21 Oct 2015) Changed paths: M src/dclass.d M src/dstruct.d M src/dsymbol.d A test/fail_compilation/ice15092.d Log Message: ----------- fix Issue 15092 - ICE on duplicated struct declarations in class members Propagate errors in `Dsymbol.addMember()` through `Dsymbol.errors`. Commit: 0a72d643af818c26b6630b3d93b94b24ed21f2d7 https://github.com/D-Programming-Language/dmd/commit/0a72d643af818c26b6630b3d93b94b24ed21f2d7 Author: Walter Bright <walter@walterbright.com> Date: 2015-10-21 (Wed, 21 Oct 2015) Changed paths: M src/func.d M src/inline.d M test/runnable/inline.d Log Message: ----------- Merge pull request #5216 from 9rnsr/fix15210 [REG2.064] Issue 15210 - [ICE] (glue.c at 1489) with tuples and AAs Commit: d432960ce9f9f308479ea86c008a37f4c56ae841 https://github.com/D-Programming-Language/dmd/commit/d432960ce9f9f308479ea86c008a37f4c56ae841 Author: Hara Kenji <k.hara.pg+dev@gmail.com> Date: 2015-10-22 (Thu, 22 Oct 2015) Changed paths: M src/aggregate.d M src/dclass.d M src/dstruct.d M src/dsymbol.d A test/fail_compilation/ice15092.d Log Message: ----------- Merge pull request #5219 from 9rnsr/fix15092 [REG2.066.0] Issue 15092 - ICE on duplicated struct declarations in class members Commit: 371fe97fb740893e2d8c52c7b09183b44d6f3b46 https://github.com/D-Programming-Language/dmd/commit/371fe97fb740893e2d8c52c7b09183b44d6f3b46 Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-22 (Thu, 22 Oct 2015) Changed paths: M src/expression.d M src/statement.d M test/fail_compilation/fail325.d A test/fail_compilation/fail_casting2.d Log Message: ----------- fix Issue 15214 - ICE in Mangler::mangleFunc Commit: 0e79ca0c64a842a9fc6a2385e5e2e90b3c8b0822 https://github.com/D-Programming-Language/dmd/commit/0e79ca0c64a842a9fc6a2385e5e2e90b3c8b0822 Author: Martin Nowak <code@dawg.eu> Date: 2015-10-22 (Thu, 22 Oct 2015) Changed paths: M src/expression.d M src/statement.d M test/fail_compilation/fail325.d A test/fail_compilation/fail_casting2.d Log Message: ----------- Merge pull request #5205 from 9rnsr/fix15214 [REG2.065.0] Issue 15214 - ICE in Mangler::mangleFunc Commit: 2fe97b11c8ed5432a8d2f8ce9e6f3a9877ea10cb https://github.com/D-Programming-Language/dmd/commit/2fe97b11c8ed5432a8d2f8ce9e6f3a9877ea10cb Author: k-hara <k.hara.pg@gmail.com> Date: 2015-10-23 (Fri, 23 Oct 2015) Changed paths: M src/aggregate.d M src/dclass.d M src/declaration.d M src/dinterpret.d M src/dstruct.d M src/dsymbol.d M src/e2ir.c M src/expression.d M src/expression.h M src/func.d M src/inline.d M src/statement.d M test/fail_compilation/fail325.d A test/fail_compilation/fail_casting2.d A test/fail_compilation/ice15092.d M test/runnable/inline.d Log Message: ----------- Merge remote-tracking branch 'upstream/stable' into merge_stable Conflicts: src/dclass.d test/runnable/inline.d Commit: c7c0eac35f71e4da1ca50e6b1d0da445f2bc123c https://github.com/D-Programming-Language/dmd/commit/c7c0eac35f71e4da1ca50e6b1d0da445f2bc123c Author: Hara Kenji <k.hara.pg+dev@gmail.com> Date: 2015-10-23 (Fri, 23 Oct 2015) Changed paths: M src/aggregate.d M src/dclass.d M src/declaration.d M src/dinterpret.d M src/dstruct.d M src/dsymbol.d M src/e2ir.c M src/expression.d M src/expression.h M src/func.d M src/inline.d M src/statement.d M test/fail_compilation/fail325.d A test/fail_compilation/fail_casting2.d A test/fail_compilation/ice15092.d M test/runnable/inline.d Log Message: ----------- Merge pull request #5222 from 9rnsr/merge_stable Merge remote-tracking branch 'upstream/stable' into merge_stable Compare: https://github.com/D-Programming-Language/dmd/compare/1fe51af41484...c7c0eac35f71 |
Copyright © 1999-2021 by the D Language Foundation