Use _LIBCPP_UNREACHABLE to convince GCC that non-void functions actually always return
llvm-svn: 337519
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: 41cdcbeedd761c6b9d349ce868e683cfcfef280f
diff --git a/include/experimental/filesystem b/include/experimental/filesystem
index be73bf1..6481aa6 100644
--- a/include/experimental/filesystem
+++ b/include/experimental/filesystem
@@ -232,6 +232,7 @@
#include <experimental/__config>
#include <cstddef>
+#include <cstdlib>
#include <chrono>
#include <iterator>
#include <iosfwd>
@@ -2250,6 +2251,7 @@
__ec->clear();
return __data_.__type_;
}
+ _LIBCPP_UNREACHABLE();
}
_LIBCPP_INLINE_VISIBILITY
@@ -2270,6 +2272,7 @@
return __data_.__type_;
}
}
+ _LIBCPP_UNREACHABLE();
}
_LIBCPP_INLINE_VISIBILITY
@@ -2284,6 +2287,7 @@
case _RefreshSymlink:
return file_status(__get_ft(__ec), __data_.__non_sym_perms_);
}
+ _LIBCPP_UNREACHABLE();
}
_LIBCPP_INLINE_VISIBILITY
@@ -2299,6 +2303,7 @@
case _RefreshSymlinkUnresolved:
return file_status(__get_sym_ft(__ec), __data_.__sym_perms_);
}
+ _LIBCPP_UNREACHABLE();
}
@@ -2324,6 +2329,7 @@
return __data_.__size_;
}
}
+ _LIBCPP_UNREACHABLE();
}
_LIBCPP_INLINE_VISIBILITY
@@ -2342,6 +2348,7 @@
return __data_.__nlink_;
}
}
+ _LIBCPP_UNREACHABLE();
}
_LIBCPP_INLINE_VISIBILITY
@@ -2364,6 +2371,7 @@
return __data_.__write_time_;
}
}
+ _LIBCPP_UNREACHABLE();
}
private:
_Path __p_;