chiark / gitweb /
bus: be nice to LLVM and don't embedd a VLA in a union
[elogind.git] / src / libsystemd-bus / bus-type.c
index 0557328085cf27593f46af4d11e613991e0cc933..b7914d15d3b7b7f6da787c47cf10ce6aacc27401 100644 (file)
@@ -92,6 +92,22 @@ bool bus_type_is_basic(char c) {
         return !!memchr(valid, c, sizeof(valid));
 }
 
+bool bus_type_is_trivial(char c) {
+        static const char valid[] = {
+                SD_BUS_TYPE_BYTE,
+                SD_BUS_TYPE_BOOLEAN,
+                SD_BUS_TYPE_INT16,
+                SD_BUS_TYPE_UINT16,
+                SD_BUS_TYPE_INT32,
+                SD_BUS_TYPE_UINT32,
+                SD_BUS_TYPE_INT64,
+                SD_BUS_TYPE_UINT64,
+                SD_BUS_TYPE_DOUBLE
+        };
+
+        return !!memchr(valid, c, sizeof(valid));
+}
+
 bool bus_type_is_container(char c) {
         static const char valid[] = {
                 SD_BUS_TYPE_ARRAY,