odygrd / quill

Asynchronous Low Latency C++ Logging Library
MIT License
1.36k stars 142 forks source link

fix build failure of Intel Compiler Classic #414

Closed tetsuh closed 3 months ago

tetsuh commented 5 months ago

Applied past 8df8f2e to current code. (#332) Intel Compiler Classic itself doesn't have x86gprintrin.h and it seems incompatible with GCC's x86gprintrin.h

Unfortunately, has_include() is set to true when build by Intel Compiler Classic. This is because __has_include() finds the GCC include file. It looks bad, but the only way to exclude it is to use "&& !defined(INTEL_COMPILER)".

This is a problem only with Intel Compiler Classic, which is now deprecated. The current Intel Compiler (icx) does not have the problem.

Here is Reproduce snipet by godbolt.

odygrd commented 3 months ago

thanks for the PR :)