Change the enum-to-string functions to not use a default case, such that
the compiler will give a -Wswitch warning if an enumerator is not
handled. Add some missing ones found by such warnings.
Put a bt_common_abort call after each switch (rather than returning
"(unknown)", because there's no way in theory that we can reach that.
Having anything else would be a bug we would want to fix in babeltrace.
Change-Id: I2cfae112386aede4844062be51dba009a1e9a056
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/6693
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
Tested-by: jenkins <jenkins@lttng.org>
return "BOOL";
case BT_FIELD_CLASS_TYPE_BIT_ARRAY:
return "BIT_ARRAY";
return "BOOL";
case BT_FIELD_CLASS_TYPE_BIT_ARRAY:
return "BIT_ARRAY";
+ case BT_FIELD_CLASS_TYPE_INTEGER:
+ return "INTEGER";
case BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER:
return "UNSIGNED_INTEGER";
case BT_FIELD_CLASS_TYPE_SIGNED_INTEGER:
return "SIGNED_INTEGER";
case BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER:
return "UNSIGNED_INTEGER";
case BT_FIELD_CLASS_TYPE_SIGNED_INTEGER:
return "SIGNED_INTEGER";
+ case BT_FIELD_CLASS_TYPE_ENUMERATION:
+ return "ENUMERATION";
case BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION:
return "UNSIGNED_ENUMERATION";
case BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION:
return "SIGNED_ENUMERATION";
case BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION:
return "UNSIGNED_ENUMERATION";
case BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION:
return "SIGNED_ENUMERATION";
+ case BT_FIELD_CLASS_TYPE_REAL:
+ return "REAL";
case BT_FIELD_CLASS_TYPE_SINGLE_PRECISION_REAL:
return "SINGLE_PRECISION_REAL";
case BT_FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL:
case BT_FIELD_CLASS_TYPE_SINGLE_PRECISION_REAL:
return "SINGLE_PRECISION_REAL";
case BT_FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL:
return "STRING";
case BT_FIELD_CLASS_TYPE_STRUCTURE:
return "STRUCTURE";
return "STRING";
case BT_FIELD_CLASS_TYPE_STRUCTURE:
return "STRUCTURE";
+ case BT_FIELD_CLASS_TYPE_ARRAY:
+ return "ARRAY";
case BT_FIELD_CLASS_TYPE_STATIC_ARRAY:
return "STATIC_ARRAY";
case BT_FIELD_CLASS_TYPE_STATIC_ARRAY:
return "STATIC_ARRAY";
+ case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY:
+ return "DYNAMIC_ARRAY";
case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY_WITHOUT_LENGTH_FIELD:
return "DYNAMIC_ARRAY_WITHOUT_LENGTH_FIELD";
case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY_WITH_LENGTH_FIELD:
return "DYNAMIC_ARRAY_WITH_LENGTH_FIELD";
case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY_WITHOUT_LENGTH_FIELD:
return "DYNAMIC_ARRAY_WITHOUT_LENGTH_FIELD";
case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY_WITH_LENGTH_FIELD:
return "DYNAMIC_ARRAY_WITH_LENGTH_FIELD";
+ case BT_FIELD_CLASS_TYPE_OPTION:
+ return "OPTION";
case BT_FIELD_CLASS_TYPE_OPTION_WITHOUT_SELECTOR_FIELD:
return "OPTION_WITHOUT_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITHOUT_SELECTOR_FIELD:
return "OPTION_WITHOUT_SELECTOR_FIELD";
+ case BT_FIELD_CLASS_TYPE_OPTION_WITH_SELECTOR_FIELD:
+ return "OPTION_WITH_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITH_BOOL_SELECTOR_FIELD:
return "OPTION_WITH_BOOL_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITH_BOOL_SELECTOR_FIELD:
return "OPTION_WITH_BOOL_SELECTOR_FIELD";
+ case BT_FIELD_CLASS_TYPE_OPTION_WITH_INTEGER_SELECTOR_FIELD:
+ return "OPTION_WITH_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD:
return "OPTION_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITH_SIGNED_INTEGER_SELECTOR_FIELD:
return "OPTION_WITH_SIGNED_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD:
return "OPTION_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_OPTION_WITH_SIGNED_INTEGER_SELECTOR_FIELD:
return "OPTION_WITH_SIGNED_INTEGER_SELECTOR_FIELD";
+ case BT_FIELD_CLASS_TYPE_VARIANT:
+ return "VARIANT";
case BT_FIELD_CLASS_TYPE_VARIANT_WITHOUT_SELECTOR_FIELD:
return "VARIANT_WITHOUT_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_VARIANT_WITHOUT_SELECTOR_FIELD:
return "VARIANT_WITHOUT_SELECTOR_FIELD";
+ case BT_FIELD_CLASS_TYPE_VARIANT_WITH_SELECTOR_FIELD:
+ return "VARIANT_WITH_SELECTOR_FIELD";
+ case BT_FIELD_CLASS_TYPE_VARIANT_WITH_INTEGER_SELECTOR_FIELD:
+ return "VARIANT_WITH_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD:
return "VARIANT_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_INTEGER_SELECTOR_FIELD:
return "VARIANT_WITH_SIGNED_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD:
return "VARIANT_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD";
case BT_FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_INTEGER_SELECTOR_FIELD:
return "VARIANT_WITH_SIGNED_INTEGER_SELECTOR_FIELD";
- default:
- return "(unknown)";
+ case __BT_FIELD_CLASS_TYPE_BIG_VALUE:
+ bt_common_abort ();
return "DECIMAL";
case BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_HEXADECIMAL:
return "HEXADECIMAL";
return "DECIMAL";
case BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_HEXADECIMAL:
return "HEXADECIMAL";
- default:
- return "(unknown)";
return "EVENT_SPECIFIC_CONTEXT";
case BT_FIELD_PATH_SCOPE_EVENT_PAYLOAD:
return "EVENT_PAYLOAD";
return "EVENT_SPECIFIC_CONTEXT";
case BT_FIELD_PATH_SCOPE_EVENT_PAYLOAD:
return "EVENT_PAYLOAD";
- default:
- return "(unknown)";
return "DEBUG_LINE";
case BT_EVENT_CLASS_LOG_LEVEL_DEBUG:
return "DEBUG";
return "DEBUG_LINE";
case BT_EVENT_CLASS_LOG_LEVEL_DEBUG:
return "DEBUG";
- default:
- return "(unknown)";
return "NULL";
case BT_VALUE_TYPE_BOOL:
return "BOOL";
return "NULL";
case BT_VALUE_TYPE_BOOL:
return "BOOL";
+ case BT_VALUE_TYPE_INTEGER:
+ return "INTEGER";
case BT_VALUE_TYPE_UNSIGNED_INTEGER:
return "UNSIGNED_INTEGER";
case BT_VALUE_TYPE_SIGNED_INTEGER:
case BT_VALUE_TYPE_UNSIGNED_INTEGER:
return "UNSIGNED_INTEGER";
case BT_VALUE_TYPE_SIGNED_INTEGER:
return "ARRAY";
case BT_VALUE_TYPE_MAP:
return "MAP";
return "ARRAY";
case BT_VALUE_TYPE_MAP:
return "MAP";
- default:
- return "(unknown)";
return "FATAL";
case BT_LOGGING_LEVEL_NONE:
return "NONE";
return "FATAL";
case BT_LOGGING_LEVEL_NONE:
return "NONE";
- default:
- return "(unknown)";
return "AGAIN";
case __BT_FUNC_STATUS_INTERRUPTED:
return "INTERRUPTED";
return "AGAIN";
case __BT_FUNC_STATUS_INTERRUPTED:
return "INTERRUPTED";
- default:
- return "(unknown)";
}
#define NS_PER_S_I INT64_C(1000000000)
}
#define NS_PER_S_I INT64_C(1000000000)
return "SINK";
case BT_COMPONENT_CLASS_TYPE_FILTER:
return "FILTER";
return "SINK";
case BT_COMPONENT_CLASS_TYPE_FILTER:
return "FILTER";
- default:
- return "(unknown)";
const char *bt_message_type_string(enum bt_message_type type)
{
switch (type) {
const char *bt_message_type_string(enum bt_message_type type)
{
switch (type) {
- case BT_MESSAGE_TYPE_EVENT:
- return "EVENT";
- case BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY:
- return "MESSAGE_ITERATOR_INACTIVITY";
case BT_MESSAGE_TYPE_STREAM_BEGINNING:
return "STREAM_BEGINNING";
case BT_MESSAGE_TYPE_STREAM_END:
return "STREAM_END";
case BT_MESSAGE_TYPE_STREAM_BEGINNING:
return "STREAM_BEGINNING";
case BT_MESSAGE_TYPE_STREAM_END:
return "STREAM_END";
+ case BT_MESSAGE_TYPE_EVENT:
+ return "EVENT";
case BT_MESSAGE_TYPE_PACKET_BEGINNING:
return "PACKET_BEGINNING";
case BT_MESSAGE_TYPE_PACKET_END:
return "PACKET_END";
case BT_MESSAGE_TYPE_DISCARDED_EVENTS:
return "DISCARDED_EVENTS";
case BT_MESSAGE_TYPE_PACKET_BEGINNING:
return "PACKET_BEGINNING";
case BT_MESSAGE_TYPE_PACKET_END:
return "PACKET_END";
case BT_MESSAGE_TYPE_DISCARDED_EVENTS:
return "DISCARDED_EVENTS";
- default:
- return "(unknown)";
+ case BT_MESSAGE_TYPE_DISCARDED_PACKETS:
+ return "DISCARDED_PACKETS";
+ case BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY:
+ return "MESSAGE_ITERATOR_INACTIVITY";
}
#endif /* BABELTRACE_GRAPH_MESSAGE_MESSAGE_INTERNAL_H */
}
#endif /* BABELTRACE_GRAPH_MESSAGE_MESSAGE_INTERNAL_H */
return "READ_BASIC_CONTINUE";
case BFCR_STATE_DONE:
return "DONE";
return "READ_BASIC_CONTINUE";
case BFCR_STATE_DONE:
return "DONE";
- default:
- return "(unknown)";
return "ERROR";
case BT_BFCR_STATUS_OK:
return "OK";
return "ERROR";
case BT_BFCR_STATUS_OK:
return "OK";
- default:
- return "(unknown)";
}
#endif /* CTF_BFCR_H */
}
#endif /* CTF_BFCR_H */
return "AFTER_STREAM_PACKET_CONTEXT";
case STATE_EMIT_MSG_STREAM_BEGINNING:
return "EMIT_MSG_STREAM_BEGINNING";
return "AFTER_STREAM_PACKET_CONTEXT";
case STATE_EMIT_MSG_STREAM_BEGINNING:
return "EMIT_MSG_STREAM_BEGINNING";
+ case STATE_CHECK_EMIT_MSG_DISCARDED_EVENTS:
+ return "CHECK_EMIT_MSG_DISCARDED_EVENTS";
+ case STATE_CHECK_EMIT_MSG_DISCARDED_PACKETS:
+ return "CHECK_EMIT_MSG_DISCARDED_PACKETS";
case STATE_EMIT_MSG_PACKET_BEGINNING:
return "EMIT_MSG_PACKET_BEGINNING";
case STATE_EMIT_MSG_DISCARDED_EVENTS:
case STATE_EMIT_MSG_PACKET_BEGINNING:
return "EMIT_MSG_PACKET_BEGINNING";
case STATE_EMIT_MSG_DISCARDED_EVENTS:
return "EMIT_MSG_STREAM_END";
case STATE_DONE:
return "DONE";
return "EMIT_MSG_STREAM_END";
case STATE_DONE:
return "DONE";
- default:
- return "(unknown)";
return "AGAIN";
case CTF_MSG_ITER_MEDIUM_STATUS_ERROR:
return "ERROR";
return "AGAIN";
case CTF_MSG_ITER_MEDIUM_STATUS_ERROR:
return "ERROR";
+ case CTF_MSG_ITER_MEDIUM_STATUS_MEMORY_ERROR:
+ return "MEMORY_ERROR";
case CTF_MSG_ITER_MEDIUM_STATUS_OK:
return "OK";
case CTF_MSG_ITER_MEDIUM_STATUS_OK:
return "OK";
- default:
- return "(unknown)";
return "AGAIN";
case CTF_MSG_ITER_STATUS_ERROR:
return "ERROR";
return "AGAIN";
case CTF_MSG_ITER_STATUS_ERROR:
return "ERROR";
+ case CTF_MSG_ITER_STATUS_MEMORY_ERROR:
+ return "MEMORY_ERROR";
case CTF_MSG_ITER_STATUS_OK:
return "OK";
case CTF_MSG_ITER_STATUS_OK:
return "OK";
- default:
- return "(unknown)";
}
#endif /* CTF_MSG_ITER_H */
}
#endif /* CTF_MSG_ITER_H */