I hope it won't be obscure. But sometimes, you **
need** to compile with the same compiler even if you don't exploit specific compiler features. Namely for "Bug Compatibility" reasons:
https://en.wikipedia.org/wiki/Bug_compatibilityWhen you work with low level libraries and tend to access hardware or driver libraries (think GPUs, FPGAs, etc.) in many cases, compiling with GCC or CLANG or whatever compiler has been used to compile the libraries you are using is essential.
This is a very common issues when working on specific hardware or embedded software. Compilers are not "perfect" they have bugs like any other pieces (I know we tend to forget it). Sometimes we don't care, sometimes we do. And actually now that Deep Learning and Machine learning is really a big thing. "Bug Compatibility" is an important issue. Try compiling CUDA code with the wrong compiler: I wish you good luck in your debugging :D
Jonathan