GCC 7 warns when compiling ChibiOS 17.6.x and 18.2.x about unallowed 'register' storage class specifier in cmsis_gcc.h, an issue which has been fixed in the recent CMSIS 5.3 (or maybe already in 5.1 or 5.2 - I only checked 5.0 (broken) and 5.3).
For ChibiOS 17.6.x the exact file path is os/common/ext/CMSIS/include/cmsis_gcc.h and GCC complains about lines 150 (function '__get_PSP(void)') and 175 (function '__get_MSP(void)'). The error message is:
Code: Select all
warning: ISO C++1z does not allow 'register' storage class specifier [-Wregister]
register uint32_t result;
^~~~~~
In the recent version of CMSIS those 'register' keywords have been removed to fix the issue.
Maybe the CMSIS parts can be updated for ChibiOS 17.6.x and 18.2.x?
Best regards,
Thomas
PS: I don't want to start the discussion anew here, but if ChibiOS would use Git instead of SVN, the official ARM CMSIS 5 repository could be included as submodule and it would be much easier to maintain...