Просмотр исходного кода

settings_setting: Fix errors

ToString didn't have a constexpr if statement where needed.
Canonicalize missed an else, causing unreachable code error on MSVC.
lat9nq 3 лет назад
Родитель
Сommit
4903f40efe
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      src/common/settings_setting.h

+ 3 - 2
src/common/settings_setting.h

@@ -142,7 +142,7 @@ protected:
             return value_.has_value() ? std::to_string(*value_) : "none";
             return value_.has_value() ? std::to_string(*value_) : "none";
         } else if constexpr (std::is_same<Type, bool>()) {
         } else if constexpr (std::is_same<Type, bool>()) {
             return value_ ? "true" : "false";
             return value_ ? "true" : "false";
-        } else if (std::is_same<Type, AudioEngine>()) {
+        } else if constexpr (std::is_same<Type, AudioEngine>()) {
             return CanonicalizeEnum(value_);
             return CanonicalizeEnum(value_);
         } else {
         } else {
             return std::to_string(static_cast<u64>(value_));
             return std::to_string(static_cast<u64>(value_));
@@ -222,8 +222,9 @@ public:
     [[nodiscard]] std::string constexpr Canonicalize() const override {
     [[nodiscard]] std::string constexpr Canonicalize() const override {
         if constexpr (std::is_enum<Type>::value) {
         if constexpr (std::is_enum<Type>::value) {
             return CanonicalizeEnum(this->GetValue());
             return CanonicalizeEnum(this->GetValue());
+        } else {
+            return ToString(this->GetValue());
         }
         }
-        return ToString(this->GetValue());
     }
     }
 
 
     /**
     /**