From: Jean Thomas Date: Wed, 10 Apr 2024 10:25:05 +0000 (+0200) Subject: uqmi: support C reserved keywords in upstream JSON files X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=368d46c1099652aaed540968a5f458c4bb9c0922;p=project%2Fuqmi.git uqmi: support C reserved keywords in upstream JSON files Add a dummy prefix in case a name in the upstream JSON files is a C reserved keyword. This is the case with the "Register" element of the new "Configure Profile Event List" message. Signed-off-by: Jean Thomas --- diff --git a/data/gen-common.pm b/data/gen-common.pm index 0996cdd..9275d4e 100644 --- a/data/gen-common.pm +++ b/data/gen-common.pm @@ -19,6 +19,54 @@ our %tlv_types = ( ); our %common_ref = (); +my @c_reserved_keywords = ( + "alignas", + "alignof", + "auto", + "bool", + "break", + "case", + "char", + "const", + "constexpr", + "continue", + "default", + "do", + "double", + "else", + "enum", + "extern", + "false", + "float", + "for", + "goto", + "if", + "inline", + "int", + "long", + "nullptr", + "register", + "restrict", + "return", + "short", + "signed", + "sizeof", + "static", + "static_assert", + "struct", + "switch", + "thread_local", + "true", + "typedef", + "typeof", + "typeof_unqual", + "union", + "unsigned", + "void", + "volatile", + "while" +); + $prefix eq 'ctl_' and $ctl = 1; sub get_json() { @@ -33,7 +81,9 @@ sub gen_cname($) { $name =~ s/[^a-zA-Z0-9_]/_/g; $name = "_${name}" if $name =~ /^\d/; - return lc($name); + $name = lc($name); + $name = "_${name}" if (grep {$_ eq $name} @c_reserved_keywords); + return $name; } sub gen_has_types($) {