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

exception: Make constructors explicit

Ensures that exception construction is always explicit.
Lioncash 5 лет назад
Родитель
Сommit
c27ddb44de
1 измененных файлов с 4 добавлено и 4 удалено
  1. 4 4
      src/shader_recompiler/exception.h

+ 4 - 4
src/shader_recompiler/exception.h

@@ -36,21 +36,21 @@ private:
 class LogicError : public Exception {
 public:
     template <typename... Args>
-    LogicError(const char* message, Args&&... args)
+    explicit LogicError(const char* message, Args&&... args)
         : Exception{fmt::format(fmt::runtime(message), std::forward<Args>(args)...)} {}
 };
 
 class RuntimeError : public Exception {
 public:
     template <typename... Args>
-    RuntimeError(const char* message, Args&&... args)
+    explicit RuntimeError(const char* message, Args&&... args)
         : Exception{fmt::format(fmt::runtime(message), std::forward<Args>(args)...)} {}
 };
 
 class NotImplementedException : public Exception {
 public:
     template <typename... Args>
-    NotImplementedException(const char* message, Args&&... args)
+    explicit NotImplementedException(const char* message, Args&&... args)
         : Exception{fmt::format(fmt::runtime(message), std::forward<Args>(args)...)} {
         Append(" is not implemented");
     }
@@ -59,7 +59,7 @@ public:
 class InvalidArgument : public Exception {
 public:
     template <typename... Args>
-    InvalidArgument(const char* message, Args&&... args)
+    explicit InvalidArgument(const char* message, Args&&... args)
         : Exception{fmt::format(fmt::runtime(message), std::forward<Args>(args)...)} {}
 };