https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93526
--- Comment #3 from jbeulich at suse dot com --- Let me quote documentation then: "Require a constant operand and print the constant expression with no punctuation." There's nothing said about valid value ranges or alike. To me as a user of the compiler it doesn't matter what CONSTANT_ADDRESS_P() actually means or does. Of course I'm not going to exclude that the documentation is wrong, and the code works as intended (less the signedness issue).