Syntastic doesn't care about the contents of the files it checks.
It runs external programs against your files, parse their output, and
shows you the results in a window. As such, it can at worst omit error
messages produced by compilers (presumably because it didn't parse them
correctly), but it can never "invent" error messages that were not
in the output of some compiler. If you're seeing messages you don't
expect, they have been produced by gcc, not by sintastic.
To see how syntastic runs gcc enable debugging and look for
"makeprg" in the output (see ":h syntastic-config-debug").
To change the way syntastic runs gcc set the relevant checker
options. Read ":h syntastic-config-makeprg", and the wiki entry for