Commit 64a1e45
committed
Perform exceptions path analysis for all flow analyses
Fixes #5199
Fixes #5160
We already had implementation and option based support to perform exception path analysis to handle all operations that can potentially throw an exception, and hence need flow analysis data at the point of operation to be merged with analysis data at start of reachable catch blocks from that operation. However, we were only performing this analysis post pass when flow analysis is looking at exceptions data. Now we do it for all analysis as this is required for more accurate input analysis data at start of catch and finally blocks.
NOTE: Fixing this issue led to an assert firing in CodeAnalysis dataflow operation visitor for an existing unit test, which has also been fixed in this PR1 parent d408d6e commit 64a1e45
File tree
3 files changed
+31
-7
lines changed- src/Utilities/FlowAnalysis/FlowAnalysis
- Analysis/CopyAnalysis
- Framework/DataFlow
3 files changed
+31
-7
lines changedLines changed: 18 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
397 | 397 | | |
398 | 398 | | |
399 | 399 | | |
| 400 | + | |
400 | 401 | | |
401 | 402 | | |
402 | | - | |
403 | 403 | | |
404 | 404 | | |
405 | 405 | | |
| |||
423 | 423 | | |
424 | 424 | | |
425 | 425 | | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
426 | 443 | | |
427 | 444 | | |
428 | 445 | | |
| |||
Lines changed: 13 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
| 89 | + | |
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
118 | | - | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
119 | 124 | | |
120 | 125 | | |
121 | 126 | | |
| |||
286 | 291 | | |
287 | 292 | | |
288 | 293 | | |
289 | | - | |
290 | 294 | | |
291 | 295 | | |
292 | 296 | | |
293 | | - | |
294 | 297 | | |
295 | 298 | | |
296 | 299 | | |
| |||
791 | 794 | | |
792 | 795 | | |
793 | 796 | | |
794 | | - | |
| 797 | + | |
795 | 798 | | |
| 799 | + | |
796 | 800 | | |
797 | 801 | | |
798 | 802 | | |
799 | 803 | | |
800 | 804 | | |
| 805 | + | |
| 806 | + | |
801 | 807 | | |
802 | 808 | | |
| 809 | + | |
| 810 | + | |
803 | 811 | | |
804 | 812 | | |
805 | 813 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
844 | 844 | | |
845 | 845 | | |
846 | 846 | | |
847 | | - | |
848 | 847 | | |
849 | 848 | | |
850 | 849 | | |
| |||
0 commit comments