-
Notifications
You must be signed in to change notification settings - Fork 1
Description
1.0.6 compiles fine, but 1.0.7 & 1.0.8 does not
This is compiler error
In file included from /private/var/folders/b0/tyrz_hq93ln1r0lw4h39dby80000gp/T/.arduinoIDE-unsaved2025313-75751-nmsral.tbpj/Basics_Serial/Basics_Serial.ino:9:
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath.h: In function 'void FixMathPrivate::static_autotests()':
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:54:40: in 'constexpr' expansion of 'SFix<7, 0, 128>(-128, false)'
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath.h:784:101: error: left operand of shift expression '(-128 << 0)' is negative [-fpermissive]
784 | constexpr SFix(T value,bool as_raw=false) : internal_value(as_raw ? value : (internal_type(value) << NF)) {};
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~
In file included from /Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath.h:1401,
from /private/var/folders/b0/tyrz_hq93ln1r0lw4h39dby80000gp/T/.arduinoIDE-unsaved2025313-75751-nmsral.tbpj/Basics_Serial/Basics_Serial.ino:9:
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:55:35: error: non-constant condition for static assertion
55 | static_assert((s+s).getNI() == 8, "test fail");
| ~~~~~~~~~~~~~~^~~~
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:56:34: error: non-constant condition for static assertion
56 | static_assert((-s).getNI() == 8, "test fail");
| ~~~~~~~~~~~~~^~~~
In file included from /private/var/folders/b0/tyrz_hq93ln1r0lw4h39dby80000gp/T/.arduinoIDE-unsaved2025313-75751-nmsral.tbpj/Basics_Serial/Basics_Serial.ino:9:
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:59:43: in 'constexpr' expansion of 'SFix<1, 0>(-1, false)'
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath.h:784:101: error: left operand of shift expression '(-1 << 0)' is negative [-fpermissive]
784 | constexpr SFix(T value,bool as_raw=false) : internal_value(as_raw ? value : (internal_type(value) << NF)) {};
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~
In file included from /Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath.h:1401,
from /private/var/folders/b0/tyrz_hq93ln1r0lw4h39dby80000gp/T/.arduinoIDE-unsaved2025313-75751-nmsral.tbpj/Basics_Serial/Basics_Serial.ino:9:
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:60:40: error: non-constant condition for static assertion
60 | static_assert((zero - s).getNI() == 8, "test fail");
| ~~~~~~~~~~~~~~~~~~~^~~~
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:61:33: error: non-constant condition for static assertion
61 | static_assert(-(zero - s) == s, "test fail");
| ~~~~~~~~~~~~^~~~
/Users/bgw-developer/Documents/Arduino/libraries/FixMath/src/FixMath_Autotests.h:62:40: error: non-constant condition for static assertion
62 | static_assert((s*negone).getNI() == 8, "test fail");
| ~~~~~~~~~~~~~~~~~~~^~~~
exit status 1
Compilation error: exit status 1