summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2018-08-16 11:41:19 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2018-08-16 11:41:19 +0000
commit83552ee008926cb17fe3ab3b209814a52d40c43e (patch)
tree0910c06f9ea1c6ca2de9120cc14082082dfa5ea8
parentd8f100a6f547875065c2ff0828c14fb6fbd0c175 (diff)
downloadbcm5719-llvm-83552ee008926cb17fe3ab3b209814a52d40c43e.tar.gz
bcm5719-llvm-83552ee008926cb17fe3ab3b209814a52d40c43e.zip
Attempt to fix clangd tests on older compilers
Old gcc versions of gcc struggle with raw string literals inside macros. Inspired by rL339759 llvm-svn: 339866
-rw-r--r--clang-tools-extra/unittests/clangd/CodeCompleteTests.cpp28
1 files changed, 16 insertions, 12 deletions
diff --git a/clang-tools-extra/unittests/clangd/CodeCompleteTests.cpp b/clang-tools-extra/unittests/clangd/CodeCompleteTests.cpp
index 6e1045ae691..a18175065c2 100644
--- a/clang-tools-extra/unittests/clangd/CodeCompleteTests.cpp
+++ b/clang-tools-extra/unittests/clangd/CodeCompleteTests.cpp
@@ -1538,36 +1538,39 @@ TEST(SignatureHelpTest, OverloadsOrdering) {
}
TEST(SignatureHelpTest, InstantiatedSignatures) {
- EXPECT_THAT(signatures(R"cpp(
+ StringRef Sig0 = R"cpp(
template <class T>
void foo(T, T, T);
int main() {
foo<int>(^);
}
- )cpp")
- .signatures,
+ )cpp";
+
+ EXPECT_THAT(signatures(Sig0).signatures,
ElementsAre(Sig("foo(T, T, T) -> void", {"T", "T", "T"})));
- EXPECT_THAT(signatures(R"cpp(
+ StringRef Sig1 = R"cpp(
template <class T>
void foo(T, T, T);
int main() {
foo(10, ^);
- })cpp")
- .signatures,
+ })cpp";
+
+ EXPECT_THAT(signatures(Sig1).signatures,
ElementsAre(Sig("foo(T, T, T) -> void", {"T", "T", "T"})));
- EXPECT_THAT(signatures(R"cpp(
+ StringRef Sig2 = R"cpp(
template <class ...T>
void foo(T...);
int main() {
foo<int>(^);
}
- )cpp")
- .signatures,
+ )cpp";
+
+ EXPECT_THAT(signatures(Sig2).signatures,
ElementsAre(Sig("foo(T...) -> void", {"T..."})));
// It is debatable whether we should substitute the outer template parameter
@@ -1575,7 +1578,7 @@ TEST(SignatureHelpTest, InstantiatedSignatures) {
// do substitute in code complete.
// FIXME: make code complete and signature help consistent, figure out which
// way is better.
- EXPECT_THAT(signatures(R"cpp(
+ StringRef Sig3 = R"cpp(
template <class T>
struct X {
template <class U>
@@ -1585,8 +1588,9 @@ TEST(SignatureHelpTest, InstantiatedSignatures) {
int main() {
X<int>().foo<double>(^)
}
- )cpp")
- .signatures,
+ )cpp";
+
+ EXPECT_THAT(signatures(Sig3).signatures,
ElementsAre(Sig("foo(T, U) -> void", {"T", "U"})));
}
OpenPOWER on IntegriCloud