Added extra warning ignore macros for gcc warnings

Also made clang versions of the macros. This is a second take on Pull Request #443 which had issues.

This passes all tests but should be tested on GCC since I do not have access to that on my end.