Allow emulator.h to build under "-Wall -Wextra"

I like to build by cone with CXXFLAGS="-Wall -Wextra -Werror".  It
appears that the code that's generated by Chisel builds fine this way,
but emulator.h generates a whole bunch of warnings on my machine.

This takes advantage of GCC's "#pragme GCC diagnostic" to hide the
warninsg that GCC generates for me.  This depends on having a new-ish
GCC because it uses the push/pop pragmas in order to allow me to build
the remainder of my code with warnings still enabled but mask the
warnings inside emulator.h.