https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93870
--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Clearly we're trying to take the address of a TARGET_EXPR: TARGET_EXPR <D.2381, operator~ (0)> That's bad and we've had PRs about this in the past, e.g. Bug 87145. I suspect the fix might be along the same lines.