Home | History | Annotate | Download | only in Support
      1 //===- llvm/Support/Errno.h - Portable+convenient errno handling -*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 //
     10 // This file declares some portable and convenient functions to deal with errno.
     11 //
     12 //===----------------------------------------------------------------------===//
     13 
     14 #ifndef LLVM_SUPPORT_ERRNO_H
     15 #define LLVM_SUPPORT_ERRNO_H
     16 
     17 #include <string>
     18 
     19 namespace llvm {
     20 namespace sys {
     21 
     22 /// Returns a string representation of the errno value, using whatever
     23 /// thread-safe variant of strerror() is available.  Be sure to call this
     24 /// immediately after the function that set errno, or errno may have been
     25 /// overwritten by an intervening call.
     26 std::string StrError();
     27 
     28 /// Like the no-argument version above, but uses \p errnum instead of errno.
     29 std::string StrError(int errnum);
     30 
     31 }  // namespace sys
     32 }  // namespace llvm
     33 
     34 #endif  // LLVM_SYSTEM_ERRNO_H
     35