Maybe it's about time we add a self validation feature so SFML detects/warns it's being used in a different compiler than the one in which it was compiled?
This would be difficult. It's not just the compiler version, it's a lot of configuration flags: standard library linkage, threading model, exception model, C++11, ... basically anything that breaks binary compatibility between two variants of a compiler.
And I don't think this should be checked at runtime by the library anyway. By the way, it doesn't happen that much, the most common mistake is rather to use release libraries in debug mode.