]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
xdrgen: Rename "enum yada" types as just "yada"
authorChuck Lever <chuck.lever@oracle.com>
Mon, 30 Sep 2024 00:50:15 +0000 (20:50 -0400)
committerChuck Lever <chuck.lever@oracle.com>
Mon, 11 Nov 2024 18:42:00 +0000 (13:42 -0500)
This simplifies the generated C code and makes way for supporting
big-endian XDR enums.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
tools/net/sunrpc/xdrgen/templates/C/enum/declaration/enum.j2
tools/net/sunrpc/xdrgen/templates/C/enum/decoder/enum.j2
tools/net/sunrpc/xdrgen/templates/C/enum/definition/close.j2
tools/net/sunrpc/xdrgen/templates/C/enum/encoder/enum.j2
tools/net/sunrpc/xdrgen/xdr_ast.py

index ab1e576c953183d9d2a23da7e244689e185ca4c5..d1405c7c5354ae8b64fabe555e53ab7748e03317 100644 (file)
@@ -1,4 +1,4 @@
 {# SPDX-License-Identifier: GPL-2.0 #}
 
-bool xdrgen_decode_{{ name }}(struct xdr_stream *xdr, enum {{ name }} *ptr);
-bool xdrgen_encode_{{ name }}(struct xdr_stream *xdr, enum {{ name }} value);
+bool xdrgen_decode_{{ name }}(struct xdr_stream *xdr, {{ name }} *ptr);
+bool xdrgen_encode_{{ name }}(struct xdr_stream *xdr, {{ name }} value);
index 341d829afeda97f074e2f5bbfa9727ae417382f2..6482984f1cb7157fcdede3802bea86277f8ae82c 100644 (file)
@@ -8,7 +8,7 @@ bool
 {% else %}
 static bool __maybe_unused
 {% endif %}
-xdrgen_decode_{{ name }}(struct xdr_stream *xdr, enum {{ name }} *ptr)
+xdrgen_decode_{{ name }}(struct xdr_stream *xdr, {{ name }} *ptr)
 {
        u32 val;
 
index 9e62344a976aa83ab471ad18ebedd94bb4aed408..a07586cbee17971cd9fd09b8a100d0fafdfbfb87 100644 (file)
@@ -1,2 +1,3 @@
 {# SPDX-License-Identifier: GPL-2.0 #}
 };
+typedef enum {{ name }} {{ name }};
index bd0a770e50f24f7f98b823885f12c9a95fa89582..67245b9a914d2d2856d0b1e634755ac09932765d 100644 (file)
@@ -8,7 +8,7 @@ bool
 {% else %}
 static bool __maybe_unused
 {% endif %}
-xdrgen_encode_{{ name }}(struct xdr_stream *xdr, enum {{ name }} value)
+xdrgen_encode_{{ name }}(struct xdr_stream *xdr, {{ name }} value)
 {
        return xdr_stream_encode_u32(xdr, value) == XDR_UNIT;
 }
index 17d1689b58583c22423db53d0b33af68646b1e03..576e1ecfe1d78da08fb2d3a82a81dde6b32021be 100644 (file)
@@ -15,7 +15,6 @@ this_module = sys.modules[__name__]
 excluded_apis = []
 header_name = "none"
 public_apis = []
-enums = set()
 structs = set()
 pass_by_reference = set()
 
@@ -294,8 +293,6 @@ class ParseToAst(Transformer):
         c_classifier = ""
         if isinstance(children[0], _XdrIdentifier):
             name = children[0].symbol
-            if name in enums:
-                c_classifier = "enum "
             if name in structs:
                 c_classifier = "struct "
             return _XdrDefinedType(
@@ -320,7 +317,6 @@ class ParseToAst(Transformer):
     def enum(self, children):
         """Instantiate one _XdrEnum object"""
         enum_name = children[0].symbol
-        enums.add(enum_name)
 
         i = 0
         enumerators = []