libclang: ensure clang_createTranslationUnit2 always initializes *TU
llvm-svn: 201657
diff --git a/clang/unittests/libclang/LibclangTest.cpp b/clang/unittests/libclang/LibclangTest.cpp
index 7048af9..4278d10 100644
--- a/clang/unittests/libclang/LibclangTest.cpp
+++ b/clang/unittests/libclang/LibclangTest.cpp
@@ -10,8 +10,21 @@
#include "clang-c/Index.h"
#include "gtest/gtest.h"
-TEST(libclang, TestInvalidArgs) {
+TEST(libclang, clang_parseTranslationUnit2_InvalidArgs) {
EXPECT_EQ(CXError_InvalidArguments,
clang_parseTranslationUnit2(0, 0, 0, 0, 0, 0, 0, 0));
}
+TEST(libclang, clang_createTranslationUnit_InvalidArgs) {
+ EXPECT_EQ(0, clang_createTranslationUnit(0, 0));
+}
+
+TEST(libclang, clang_createTranslationUnit2_InvalidArgs) {
+ EXPECT_EQ(CXError_InvalidArguments,
+ clang_createTranslationUnit2(0, 0, 0));
+
+ CXTranslationUnit TU = reinterpret_cast<CXTranslationUnit>(1);
+ EXPECT_EQ(CXError_InvalidArguments,
+ clang_createTranslationUnit2(0, 0, &TU));
+ EXPECT_EQ(0, TU);
+}