|
70 | 70 | Termination Analysis for butSecondArgumentIsAlwaysEvaluated |
71 | 71 |
|
72 | 72 | Function Table |
73 | | - 1 parseExpression: [_ || _]; [+Parser.next; parseExpression; parseExpression; _ || _] |
74 | | - 2 parseList<f>: parseList$loop<f:f> |
75 | | - 3 parseList$loop<f>: [_ || f; parseList$loop<f:f>; _] |
76 | | - 4 parseListExpression: _ |
77 | | - 5 parseListExpression2: parseExpression; parseList<f:parseExpression> |
78 | | - 6 parseListInt: _ |
79 | | - 7 parseListIntTailRecursive: parseListIntTailRecursive$loop |
80 | | - 8 parseListIntTailRecursive$loop: [_ || parseListIntTailRecursive$loop] |
81 | | - 9 parseListListInt: parseList<f:parseListInt> |
| 73 | + 1 parseExpression: [_ || _]; [+Parser.next; parseExpression; parseExpression; _ || parseInt] |
| 74 | + 2 parseInt: [_ || _]; +Parser.next; _ |
| 75 | + 3 parseList<f>: parseList$loop<f:f> |
| 76 | + 4 parseList$loop<f>: [_ || f; parseList$loop<f:f>; _] |
| 77 | + 5 parseListExpression: _ |
| 78 | + 6 parseListExpression2: parseExpression; parseList<f:parseExpression> |
| 79 | + 7 parseListInt: parseList<f:parseInt> |
| 80 | + 8 parseListIntTailRecursive: parseListIntTailRecursive$loop |
| 81 | + 9 parseListIntTailRecursive$loop: [_ || parseInt; parseListIntTailRecursive$loop] |
| 82 | + 10 parseListListInt: parseList<f:parseListInt> |
82 | 83 |
|
83 | 84 | Termination Analysis for parseListInt |
84 | 85 |
|
|
111 | 112 |
|
112 | 113 | Function Table |
113 | 114 | 1 alwaysReturnNone: [+Parser.next; alwaysReturnNone || None] |
114 | | - 2 parseIntOWrapper: _ |
115 | | - 3 parseListIntO: _ |
116 | | - 4 testAlwaysReturnNone: alwaysReturnNone |
117 | | - 5 thisMakesNoProgress: None; [_ || +Parser.next; Some] |
| 115 | + 2 parseIntO: [+Parser.next; Some || None] |
| 116 | + 3 parseIntOWrapper: parseIntO |
| 117 | + 4 parseListIntO: parseListO<f:parseIntO> |
| 118 | + 5 parseListO<f>: parseListO$loop<f:f> |
| 119 | + 6 parseListO$loop<f>: [+Parser.next; _ || switch f {some: parseListO$loop<f:f>, none: _}] |
| 120 | + 7 testAlwaysReturnNone: alwaysReturnNone |
| 121 | + 8 thisMakesNoProgress: None; [_ || +Parser.next; Some] |
118 | 122 |
|
119 | 123 | Termination Analysis for parseListIntO |
120 | 124 |
|
|
149 | 153 | Termination Analysis Stats |
150 | 154 | Files:1 |
151 | 155 | Recursive Blocks:21 |
152 | | - Functions:45 |
153 | | - Infinite Loops:12 |
154 | | - Hygiene Errors:3 |
155 | | - Cache Hits:4/21 |
| 156 | + Functions:49 |
| 157 | + Infinite Loops:10 |
| 158 | + Hygiene Errors:2 |
| 159 | + Cache Hits:7/30 |
156 | 160 |
|
157 | 161 |
|
158 | 162 | Error Termination |
|
207 | 211 | TestCyberTruck.res:217:32-73 |
208 | 212 | Call must have named argument f |
209 | 213 |
|
210 | | - Error Hygiene |
211 | | - TestCyberTruck.res:198:29-53 |
212 | | - Named argument f must be passed a recursive function |
213 | | - |
214 | 214 | Error Termination |
215 | 215 | TestCyberTruck.res:180:15-21 |
216 | 216 | Possible infinite loop when calling parseList$loop<f:f> which is parseList$loop<f:parseListInt> |
|
219 | 219 | 2 parseList<f:parseListInt> (TestCyberTruck.res 201) |
220 | 220 | 1 parseListListInt (TestCyberTruck.res 201) |
221 | 221 |
|
222 | | - Error Termination |
223 | | - TestCyberTruck.res:180:15-21 |
224 | | - Possible infinite loop when calling parseList$loop<f:f> which is parseList$loop<f:parseExpression> |
225 | | - CallStack: |
226 | | - 3 parseList$loop<f:parseExpression> (TestCyberTruck.res 183) |
227 | | - 2 parseList<f:parseExpression> (TestCyberTruck.res 220) |
228 | | - 1 parseListExpression2 (TestCyberTruck.res 220) |
229 | | - |
230 | | - Error Termination |
231 | | - TestCyberTruck.res:228:7-38 |
232 | | - Possible infinite loop when calling parseListIntTailRecursive$loop |
233 | | - CallStack: |
234 | | - 2 parseListIntTailRecursive$loop (TestCyberTruck.res 230) |
235 | | - 1 parseListIntTailRecursive (TestCyberTruck.res 223) |
236 | | - |
237 | 222 | Error Termination |
238 | 223 | TestCyberTruck.res:238:31-49 |
239 | 224 | Possible infinite loop when calling loopAfterProgress |
|
246 | 231 | CallStack: |
247 | 232 | 1 countRendersCompiled (TestCyberTruck.res 283) |
248 | 233 |
|
249 | | - Analysis reported 15 issues (Error Hygiene:3, Error Termination:12) |
| 234 | + Analysis reported 12 issues (Error Hygiene:2, Error Termination:10) |
0 commit comments