angular/packages/compiler
Kristiyan Kostadinov dc52cef26b fix(compiler): infinite loop in parser assignment expression with invalid left-hand expression (#47151)
In #39004 some logic was introduced that tries to recover invalid expressions by treating the `=` token as a recovery point. It works by skipping ahead to the next recovery point inside the `skip` method which is called whenever an error is reported. This can lead to an infinite loop inside the `parseChain` method which assumes that reporting an error would've skipped over the token, but that won't happen since the `=` token is a recovery point. These changes resolve the infinite loop by breaking the loop if `error` didn't skip to a different token after the error was reported.

Fixes #47131.

PR Close #47151
2022-08-17 07:33:32 +00:00
..
design refactor: fix various typos across different packages (#44523) 2022-01-07 18:11:10 +00:00
src fix(compiler): infinite loop in parser assignment expression with invalid left-hand expression (#47151) 2022-08-17 07:33:32 +00:00
test fix(compiler): infinite loop in parser assignment expression with invalid left-hand expression (#47151) 2022-08-17 07:33:32 +00:00
testing feat(bazel): speed up dev-turnaround by bundling types only when packaging (#45405) 2022-04-21 11:09:39 -07:00
BUILD.bazel build(bazel): remove tsec patch to enable runfiles on Windows (#46447) 2022-06-21 12:19:53 -07:00
compiler.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
index.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
package.json feat(core): drop support for Node.js 12 (#45286) 2022-03-08 12:05:03 -08:00
public_api.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00