diff --git a/pw_status/status.cc b/pw_status/status.cc index b27d5d466..41cf311f3 100644 --- a/pw_status/status.cc +++ b/pw_status/status.cc @@ -15,29 +15,32 @@ #include "pw_status/status.h" #define PW_CASE_RETURN_ENUM_STRING(value) \ - if (status == PW_STATUS_##value) { \ - return #value; \ - } + case PW_STATUS_##value: \ + return #value extern "C" const char* pw_StatusString(pw_Status status) { - PW_CASE_RETURN_ENUM_STRING(OK); - PW_CASE_RETURN_ENUM_STRING(CANCELLED); - PW_CASE_RETURN_ENUM_STRING(UNKNOWN); - PW_CASE_RETURN_ENUM_STRING(INVALID_ARGUMENT); - PW_CASE_RETURN_ENUM_STRING(DEADLINE_EXCEEDED); - PW_CASE_RETURN_ENUM_STRING(NOT_FOUND); - PW_CASE_RETURN_ENUM_STRING(ALREADY_EXISTS); - PW_CASE_RETURN_ENUM_STRING(PERMISSION_DENIED); - PW_CASE_RETURN_ENUM_STRING(RESOURCE_EXHAUSTED); - PW_CASE_RETURN_ENUM_STRING(FAILED_PRECONDITION); - PW_CASE_RETURN_ENUM_STRING(ABORTED); - PW_CASE_RETURN_ENUM_STRING(OUT_OF_RANGE); - PW_CASE_RETURN_ENUM_STRING(UNIMPLEMENTED); - PW_CASE_RETURN_ENUM_STRING(INTERNAL); - PW_CASE_RETURN_ENUM_STRING(UNAVAILABLE); - PW_CASE_RETURN_ENUM_STRING(DATA_LOSS); - PW_CASE_RETURN_ENUM_STRING(UNAUTHENTICATED); - return "INVALID STATUS"; + switch (status) { + PW_CASE_RETURN_ENUM_STRING(OK); + PW_CASE_RETURN_ENUM_STRING(CANCELLED); + PW_CASE_RETURN_ENUM_STRING(UNKNOWN); + PW_CASE_RETURN_ENUM_STRING(INVALID_ARGUMENT); + PW_CASE_RETURN_ENUM_STRING(DEADLINE_EXCEEDED); + PW_CASE_RETURN_ENUM_STRING(NOT_FOUND); + PW_CASE_RETURN_ENUM_STRING(ALREADY_EXISTS); + PW_CASE_RETURN_ENUM_STRING(PERMISSION_DENIED); + PW_CASE_RETURN_ENUM_STRING(RESOURCE_EXHAUSTED); + PW_CASE_RETURN_ENUM_STRING(FAILED_PRECONDITION); + PW_CASE_RETURN_ENUM_STRING(ABORTED); + PW_CASE_RETURN_ENUM_STRING(OUT_OF_RANGE); + PW_CASE_RETURN_ENUM_STRING(UNIMPLEMENTED); + PW_CASE_RETURN_ENUM_STRING(INTERNAL); + PW_CASE_RETURN_ENUM_STRING(UNAVAILABLE); + PW_CASE_RETURN_ENUM_STRING(DATA_LOSS); + PW_CASE_RETURN_ENUM_STRING(UNAUTHENTICATED); + case PW_STATUS_DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_: + default: + return "INVALID STATUS"; + } } #undef PW_CASE_RETURN_ENUM_STRING