Closed jaskij closed 2 months ago
using ETL_CXX_STANDARD
to set the C++ version causes the same error, with the same workaround
Try defining ETL_NO_SMALL_CHAR_SUPPORT
as 0
in etl_profile.h or in the compiler settings.
Won't that create issues elsewhere? Since it's simply a forward-compatibility warning.
It tells the ETL that the compiler has a native char8_t
type.
Ah! But it doesn't have char8_t
.
I'm using GCC 13, but compiling in C++14 mode. This is basically a warning saying that the line would be an error if it was compiled in C++20 mode. Which won't happen because of the #ifdef
s, but GCC seems to miss it.
We may have to disable this warning, as I can't see any way to solve this other than not defining char8_t
for <C++20, which is not a real solution.
What is the GCC warning number for this?
As far as I'm aware, GCC does not number their warnings, instead using names. I've opened #909 with a proposed solution.
Working or some minor improvements, and wanted to test them using C++14. Forced it in CMakeLists.txt. This started erroring out in
platform.h
becausechar8_t
is a reserved identifier in C++20. The only way to get rid of the error (which seems a false positive given the codebase) was to addCMake patch to force C++14:
Error: