| 113 | this['_logError']('assert', msg); |
| 114 | } |
| 115 | warn(...message) { |
| 116 | // `compile()` logs `console.warn('Compilation fallback for …')` whenever it |
| 117 | // falls back to interpretation. Many tests (and the benchmark corpora) |
| 118 | // deliberately compile expressions a target cannot lower — to assert the |
| 119 | // graceful fallback / `unsupported` reporting — so this is *expected* noise, |
| 120 | // not a problem, and it reads alarmingly in the output (e.g. "Unknown |
| 121 | // operator `SinIntegral`" even though SinIntegral compiles fine on the JS |
| 122 | // target). Drop just that category here; a genuine compile regression still |
| 123 | // fails its test's assertions. Every other warning passes through. |
| 124 | if ( |
| 125 | typeof message[0] === 'string' && |
| 126 | message[0].startsWith('Compilation fallback for') |
| 127 | ) |
| 128 | return; |
| 129 | super.warn(...message); |
| 130 | } |
| 131 | } |
| 132 | |
| 133 | function recursiveSerialize(x: unknown): string { |