Malformed templates are silently accepted — result.errors is empty. (Also covers ambiguous DI unions A | B, which should emit a "not supported as injection token" diagnostic rather than a silent invalid factory.)
Repro
import { Component } from '@angular/core';
@Component({ selector: 'app-bad', template: '<div><span></div>' })
export class BadComponent {}
Actual
Compiles without populating result.errors; the parse error is swallowed.
Expected
Unclosed/malformed tags surface a template parse diagnostic in result.errors.
Impact
Silently-wrong output with no compile-time signal — a debugging trap.
Researched and drafted with Claude Code.
Malformed templates are silently accepted —
result.errorsis empty. (Also covers ambiguous DI unionsA | B, which should emit a "not supported as injection token" diagnostic rather than a silent invalid factory.)Repro
Actual
Compiles without populating
result.errors; the parse error is swallowed.Expected
Unclosed/malformed tags surface a template parse diagnostic in
result.errors.Impact
Silently-wrong output with no compile-time signal — a debugging trap.
Researched and drafted with Claude Code.