$ cat a.c int main() { double x = 1; double y = 1; int z = x & y; return 0; } $ gcc -Wall -Wextra -pedantic a.c -o a && a a.c: In function ‘main’: a.c:4:15: error: invalid operands to binary & (have ‘double’ and ‘double’) int z = x & y; ^ a.c:4:9: warning: unused variable ‘z’ [-Wunused-variable] int z = x & y; ^