"Tautological pointer comparison" build failure(s) — clang 3.4

Incorrect code...
#include 
void foo() {
 int arr[5];
 int x;
 // warn on these conditionals
 if (foo);
 if (arr);
 if (&x);
 if (foo == NULL);
 if (arr == NULL);
 if (&x == NULL);
}

void f(int &x) {
 if (&x == nullptr) { }
}
gcc with -Wall also detects some of these errors but not the one involving NULL.
PackageVersionSupposed error messageFull log Bug report
librdkafka 0.8.0-1./rdkafka_int.h:507:4: error: comparison of constant -1 with expression of type 'unsigned short' is always false [-Werror,-Wtautological-constant-out-of-range-compare] Log
open-vm-tools 2:9.2.3-1031360-7hgfsServer.c:5630:30: error: comparison of constant 255 with expression of type 'HgfsOp' is always false [-Werror,-Wtautological-constant-out-of-range-compare] Log
spout 1.4-2spout.c:982:25: error: comparison of constant 128 with expression of type 'char' is always true [-Werror,-Wtautological-constant-out-of-range-compare] Log 812249

3 errors