1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/unittests/Support
Lang Hames 034e76c90d [Support] Add ExitOnError utility to support tools that use the exit-on-error
idiom.

Most LLVM tool code exits immediately when an error is encountered and prints an
error message to stderr. The ExitOnError class supports this by providing two
call operators - one for Errors, and one for Expected<T>s. Calls to code that
can return Errors (or Expected<T>s) can use these calls to bail out on error,
and otherwise continue as if the operation had succeeded. E.g.

Error foo();
Expected<int> bar();

int main(int argc, char *argv[]) {
  ExitOnError ExitOnErr;

  ExitOnErr.setBanner(std::string("Error in ") + argv[0] + ":");

  // Exit if foo returns an error. No need to manually check error return.
  ExitOnErr(foo());

  // Exit if bar returns an error, otherwise unwrap the contained int and
  // continue.
  int X = ExitOnErr(bar());

  // ...

  return 0;
}

llvm-svn: 263749
2016-03-17 21:28:49 +00:00
..
AlignOfTest.cpp Fixed compilation issue. 2016-01-28 20:36:46 +00:00
AllocatorTest.cpp Fix "the the" in comments. 2015-06-19 01:53:21 +00:00
ArrayRecyclerTest.cpp
BlockFrequencyTest.cpp Add - and -= operators to BlockFrequency using saturating arithmetic. 2015-10-12 18:34:00 +00:00
BranchProbabilityTest.cpp BranchProbabilityTest.cpp: Suppress warnings. [-Wsign-compare] 2015-12-18 00:18:18 +00:00
Casting.cpp Removing LLVM_EXPLICIT, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:00:20 +00:00
CMakeLists.txt [Support] Add the 'Error' class for structured error handling. 2016-03-16 01:02:46 +00:00
CommandLineTest.cpp StringRef-ify some Option APIs 2015-11-17 19:00:52 +00:00
CompressionTest.cpp [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
ConvertUTFTest.cpp More UTF string conversion wrappers 2016-03-11 15:59:32 +00:00
DataExtractorTest.cpp [C++11] Use 'nullptr'. 2014-06-08 22:29:17 +00:00
DwarfTest.cpp Support: Add dwarf::getOperationEncoding() 2015-02-13 01:05:00 +00:00
EndianStreamTest.cpp Add a test showing we can write a vector of floats. 2016-01-25 19:02:20 +00:00
EndianTest.cpp Fix another UBSan test error from r248897 and follow on fix r249689 2015-10-08 20:52:23 +00:00
ErrorOrTest.cpp Use std::forward to make ErrorOr<T> constructible from a value that has a user-defined conversion to T. No functionality change intended. 2016-02-09 04:47:58 +00:00
ErrorTest.cpp [Support] Add ExitOnError utility to support tools that use the exit-on-error 2016-03-17 21:28:49 +00:00
FileOutputBufferTest.cpp Return ErrorOr from FileOutputBuffer::create. NFC. 2015-08-13 00:31:39 +00:00
formatted_raw_ostream_test.cpp
IteratorTest.cpp [ADT] Generalize pointee_iterator to smart pointers by using decltype. 2014-04-24 21:10:35 +00:00
LEB128Test.cpp [Support] add decodeSLEB128() 2014-09-15 21:51:49 +00:00
LineIteratorTest.cpp LineIterator: Provide a variant that keeps blank lines 2014-09-17 15:43:01 +00:00
LockFileManagerTest.cpp Asserting that the call to chdir succeeds in this test. Fixes some -Wunused-result warnings. 2014-08-13 11:17:41 +00:00
ManagedStatic.cpp Re-apply r211287: Remove support for LLVM runtime multi-threading. 2014-06-27 15:13:01 +00:00
MathExtrasTest.cpp MathExtrasTest.cpp: Use EXPECT_DOUBLE_EQ here, instead of EXPECT_FLOAT_EQ. 2016-03-14 23:11:28 +00:00
MD5Test.cpp Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created. 2014-08-27 05:25:25 +00:00
MemoryBufferTest.cpp Remove excess white space 2015-11-18 00:31:34 +00:00
MemoryTest.cpp Remove dead code. NFC. 2014-12-04 16:59:36 +00:00
Path.cpp Fix a -Wsign-compare in Support Path unittests 2016-02-10 19:29:01 +00:00
ProcessTest.cpp Remove dead code. NFC. 2014-12-04 16:59:36 +00:00
ProgramTest.cpp Silence -Wsign-conversion issue in ProgramTest.cpp 2016-02-03 21:41:12 +00:00
raw_ostream_test.cpp Silence some MSVC warnings about zero extending unsigned to void* 2016-02-10 19:11:15 +00:00
raw_pwrite_stream_test.cpp Disable failing TestDevNull test on Windows 2015-04-29 16:54:11 +00:00
RegexTest.cpp [C++11] Remove uses of LLVM_HAS_RVALUE_REFERENCES from the unittests. 2014-03-01 09:36:06 +00:00
ReplaceFileTest.cpp Fix rename() sometimes failing if another process uses openFileForRead() 2015-10-12 15:11:47 +00:00
ScaledNumberTest.cpp Fix infinite recursion in ScaledNumber::toInt. 2015-05-01 17:59:15 +00:00
SourceMgrTest.cpp Return a std::unique_ptr when creating a new MemoryBuffer. 2014-08-27 20:03:13 +00:00
SpecialCaseListTest.cpp SpecialCaseList: Add support for parsing multiple input files. 2015-02-04 17:39:48 +00:00
StreamingMemoryObject.cpp Use std::unique_ptr to manage the DataStreamer in bitcode parsing. 2015-06-16 23:29:49 +00:00
StringPool.cpp StringPool: Cleanup typos in unittest comments 2014-12-15 01:04:49 +00:00
SwapByteOrderTest.cpp Unit tests for the getSwappedBytes(double) fix from r237673. 2015-05-20 14:57:43 +00:00
TargetParserTest.cpp unitests: add some ARM TargetParser tests 2016-03-06 04:50:55 +00:00
ThreadLocalTest.cpp ThreadLocal: Return a mutable pointer if templated with a non-const type 2014-12-15 01:04:45 +00:00
ThreadPool.cpp ThreadPool unittests: do not hold mutex when calling condition_variable:notify() 2015-12-19 22:56:24 +00:00
TimerTest.cpp Unbreak LLVM_ENABLE_THREADS=OFF builds. 2015-12-23 01:04:53 +00:00
TimeValueTest.cpp [C++11] Use 'nullptr'. 2014-06-08 22:29:17 +00:00
TrailingObjectsTest.cpp Remove TrailingObjects::operator delete. It's still suffering from 2016-02-09 02:09:16 +00:00
TypeNameTest.cpp [Support] Add a fancy helper function to get a static name for a type. 2016-02-25 03:58:21 +00:00
UnicodeTest.cpp Move generic isPrint and columnWidth implementations to a separate header/source to allow using both generic and system-dependent versions on win32. 2013-09-04 16:00:12 +00:00
YAMLIOTest.cpp Revert r239972 (YAML: Assign a value returned by the default constructor to the value in an optional mapping). 2015-06-17 23:48:06 +00:00
YAMLParserTest.cpp Add != to YAMLParser's basic_collection_iterator. 2016-01-06 05:17:12 +00:00