finialized gcc test, doesn't work with clang as is though