(src: any, vars: Record<string, number>, digits = 10)
| 800 | }); |
| 801 | } |
| 802 | }); |
| 803 | }); |
| 804 | |
| 805 | // REVIEW.md E1: Range with symbolic bounds compiled to |
| 806 | // `Array.from({length: NaN})` because the guard tested `parseFloat(...) !== |
| 807 | // null`, but parseFloat returns NaN (never null) for symbolic bounds — so the |
| 808 | // constant-length branch always won and every symbolic Range yielded `[]`. |
| 809 | describe('COMPILE Range with symbolic bounds (E1)', () => { |
| 810 | it('Range(1, n) emits a runtime length, not NaN', () => { |
| 811 | const code = compile(ce.expr(['Range', 1, 'n']))!.code; |
no test coverage detected