https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70194
Bug ID: 70194 Summary: [6 regression] missing -Waddress on constexpr pointer Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: msebor at gcc dot gnu.org Target Milestone: --- GCC 5 and prior issue a -Waddress warning for each of the equality expressions in the test case below. The current top of GCC 6.0 trunk doesn't diagnose the second equality expression where the address being compared is stored in a constexpr pointer. $ (set -x; cat v.c && ~/bin/gcc-5.1.0/bin/g++ -S -Wall -Wextra -Wpedantic -o/dev/null -std=c++14 -xc++ v.c && /home/msebor/build/gcc-trunk-git/gcc/xgcc -B/home/msebor/build/gcc-trunk-git/gcc -S -Wall -Wextra -Wpedantic -o/dev/null -xc++ v.c) + cat v.c int i; const bool b0 = &i == 0; constexpr int *p = &i; const bool b1 = p == 0; + /home/msebor/bin/gcc-5.1.0/bin/g++ -S -Wall -Wextra -Wpedantic -o/dev/null -std=c++14 -xc++ v.c v.c:3:23: warning: the address of ‘i’ will never be NULL [-Waddress] const bool b0 = &i == 0; ^ v.c:6:22: warning: the address of ‘i’ will never be NULL [-Waddress] const bool b1 = p == 0; ^ + /home/msebor/build/gcc-trunk-git/gcc/xgcc -B/home/msebor/build/gcc-trunk-git/gcc -S -Wall -Wextra -Wpedantic -o/dev/null -xc++ v.c v.c:3:23: warning: the address of ‘i’ will never be NULL [-Waddress] const bool b0 = &i == 0; ^