Project

General

Profile

Feature #1683

rewrite unreachable processing to run in a loop (and/or using ascent rules) to detect and "rollup" dead code

Added by Eric Faulhaber over 11 years ago. Updated over 7 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
80.00 h
billable:
No
vendor_id:
GCD
version_reported:
version_resolved:

History

#1 Updated by Eric Faulhaber over 11 years ago

The issue is that if all contents of a particular IF block turn out to be unreachable BUT the IF is reachable, then the IF can be removed. This is handled by a fixed number of multiple sequential unreachable cleanup runs in annotations today, but would be better handled by a loop until no more removals can be found in a given pass.

We have a TRPL language feature meant to support this sort of processing in ascent rules: the analog property. For an example of how it is used, see annotations/where_clause_normalize.rules and fixups/normalize_expressions.rules.

#2 Updated by Eric Faulhaber over 11 years ago

  • Subject changed from unreachable processing should be rewritten to run in a loop (and/or using ascent rules) to detect and "rollup" dead code to rewrite unreachable processing to run in a loop (and/or using ascent rules) to detect and "rollup" dead code

#3 Updated by Greg Shah over 11 years ago

  • Target version set to Code Improvements

#4 Updated by Greg Shah over 7 years ago

  • Target version deleted (Code Improvements)

Also available in: Atom PDF