diff options
author | Ian Abbott <abbotti@mev.co.uk> | 2017-05-17 14:24:21 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2017-05-19 07:12:46 +0200 |
commit | f6652e7404ba4f10923227c75da4db4c86b1275e (patch) | |
tree | ef004d99024cebc4bf1ec8cd5946b93798d8fb22 /include/command.h | |
parent | 495111d91a35f63d8fa68749f0c4fe3b0ad31e54 (diff) | |
download | barebox-f6652e7404ba4f10923227c75da4db4c86b1275e.tar.gz barebox-f6652e7404ba4f10923227c75da4db4c86b1275e.tar.xz |
commands: allow <cmd>_aliases[] to be const
Commands with aliases define an array of alias strings such as:
static const char *<cmd>_aliases[] = { "<alias1>", NULL};
Although the elements are of type `const char *`, the elements
themselves are not `const`-qualified. If the array is declared as:
static const char * const <cmd>_aliases[] = { "<alias1>", NULL};
then the compiler warns about const qualifiers being discarded. This is
because the `aliases` member of `struct command` is declared as `const
char *aliases;`.
Change the declaration of the `aliases` member of `struct command` to
`const char * const *aliases;` so that it can point to a `const` array
of `const char *`. Also change the declaration of the `aliases`
variable in `register_command()` to avoid unnecessary type casts.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/command.h')
-rw-r--r-- | include/command.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/command.h b/include/command.h index 43ee454f22..0afc5c7550 100644 --- a/include/command.h +++ b/include/command.h @@ -40,7 +40,7 @@ struct string_list; */ struct command { const char *name; /* Command Name */ - const char **aliases; + const char * const *aliases; /* Implementation function */ int (*cmd)(int, char *[]); int (*complete)(struct string_list *sl, char *instr); |