Hi Jonathan, Thanks for fixing the tests and the guidance regarding the patch! I rebased the patch on top of that commit (b6b66006787b0991e94f15c7b5c56403f1eb85fb) and fixed all issues (I believe) which you pointed out. I also added the original reproducer to the test case as you suggested. I configured as before with ../configure -prefix=/usr --enable-languages=c,c++ --enable-multiarch --host=x86_64-linux-gnu --build=x86_64-linux-gnu --target=x86_64-linux-gnu --enable-cxx-flags=-fno-rtti and an additional configuration with -frtti instead to check nothing else breaks. Now the test results look much clearer: Without RTTI before applying patch: === libstdc++ Summary === # of expected passes 14560 # of unexpected failures 5 # of expected failures 95 # of unsupported tests 702 Without RTTI after applying patch: === libstdc++ Summary === # of expected passes 14562 # of unexpected failures 5 # of expected failures 95 # of unsupported tests 702 With RTTI before applying patch: === libstdc++ Summary === # of expected passes 14598 # of unexpected failures 2 # of expected failures 95 # of unsupported tests 683 With RTTI after applying patch: === libstdc++ Summary === # of expected passes 14600 # of unexpected failures 2 # of expected failures 95 # of unsupported tests 683 That looks logical to me. I think ideally a test for the pointer-to-member case should also be added...