Skip to content

Nested pseudo-elements in :host produce invalid selector #64830

@mattrbeck

Description

@mattrbeck

Which @angular/* package(s) are the source of the bug?

compiler

Is this a regression?

Yes

Description

:host(:not(:has(.foo))) {} produces ([_nghost]:not(:has(.foo))) {} at head. Note the wrapping parentheses which prevent the selector from matching the intended elements. This is the minimal reproduction I was able to find quickly.

Please provide a link to a minimal reproduction of the bug

No response

Please provide the exception or error you saw


Please provide the environment you discovered this bug in (run ng version)

Angular CLI: 20.3.6
Node: 20.19.1
Package Manager: npm 10.8.2
OS: linux x64
    

Angular: 20.3.6
... animations, build, cli, common, compiler, compiler-cli, core
... forms, platform-browser

Package                      Version
------------------------------------
@angular-devkit/architect    0.2003.6
@angular-devkit/core         20.3.6
@angular-devkit/schematics   20.3.6
@angular/cdk                 20.2.9
@angular/material            20.2.9
@schematics/angular          20.3.6
rxjs                         7.8.2
typescript                   5.8.3
zone.js                      0.15.1

Anything else?

No response

Metadata

Metadata

Assignees

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions