
Dear llandre!
llandre schrieb:
#define CFG_CMD_NEW1 0x8000000000000000ULL #define CFG_CMD_NEW2 ???
IIUC we have 64 bits available for the commands and 63 commands are already defined. So how to define more than 64 commands?
This is indeed a big problem which will occur to nearly every developer who implements new commands. CFG_CMD_* and CONFIG_COMMANDS are only used for preprocessor evaluation; they don't seem to be used in object code. But they rely on the ULL (unsigned long long int) type; I don't think that there is something like a 128bit type which can be used directly for logical AND operations.
For new command there could be used another macro like CONFIG_COMMANDS2 and CFG_CMD2_* for the configuration values.
Here are some statistics about usage of the old definitions: CONFIG_COMMANDS: about 1650 entries in 470 files CFG_CMD: about 4126 entries in 470
With best regards Andreas Schweigstill