<div dir="ltr"><div dir="ltr">Hi Yvan, sorry for the inconvenience.<div><br></div><div>I believe this is the same as <a href="https://llvm.org/PR40033">https://llvm.org/PR40033</a>, should be fixed by <span style="color:rgb(0,0,0);white-space:pre-wrap">r349362 (the build hasn't finished yet).</span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap">I'll double check it's fixed tomorrow and make sure to take another look if not.</span></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Dec 17, 2018 at 10:46 AM Yvan Roux <<a href="mailto:yvan.roux@linaro.org">yvan.roux@linaro.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Ilya,<br>
<br>
I'm not sure which one of the commits in that series is to blame, but<br>
ARM bots are broken due to a failure in CodeCompleteTest.cpp, most<br>
recent logs are available here:<br>
<br>
<a href="http://lab.llvm.org:8011/builders/clang-cmake-armv7-quick/builds/6090/steps/ninja%20check%201/logs/FAIL%3A%20Clang-Unit%3A%3APreferredTypeTest.BinaryExpr" rel="noreferrer" target="_blank">http://lab.llvm.org:8011/builders/clang-cmake-armv7-quick/builds/6090/steps/ninja%20check%201/logs/FAIL%3A%20Clang-Unit%3A%3APreferredTypeTest.BinaryExpr</a><br>
<br>
Cheers,<br>
Yvan<br>
<br>
On Thu, 13 Dec 2018 at 18:35, Ilya Biryukov via cfe-commits<br>
<<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>> wrote:<br>
><br>
> Author: ibiryukov<br>
> Date: Thu Dec 13 09:32:38 2018<br>
> New Revision: 349063<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=349063&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=349063&view=rev</a><br>
> Log:<br>
> [CodeComplete] Adhere to LLVM naming style in CodeCompletionTest. NFC<br>
><br>
> Also reuses the same var for multiple to reduce the chance of<br>
> accidentally referecing the previous test.<br>
><br>
> Modified:<br>
>     cfe/trunk/unittests/Sema/CodeCompleteTest.cpp<br>
><br>
> Modified: cfe/trunk/unittests/Sema/CodeCompleteTest.cpp<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Sema/CodeCompleteTest.cpp?rev=349063&r1=349062&r2=349063&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Sema/CodeCompleteTest.cpp?rev=349063&r1=349062&r2=349063&view=diff</a><br>
> ==============================================================================<br>
> --- cfe/trunk/unittests/Sema/CodeCompleteTest.cpp (original)<br>
> +++ cfe/trunk/unittests/Sema/CodeCompleteTest.cpp Thu Dec 13 09:32:38 2018<br>
> @@ -183,79 +183,80 @@ TEST(SemaCodeCompleteTest, VisitedNSWith<br>
><br>
>  TEST(PreferredTypeTest, BinaryExpr) {<br>
>    // Check various operations for arithmetic types.<br>
> -  StringRef code1 = R"cpp(<br>
> +  StringRef Code = R"cpp(<br>
>      void test(int x) {<br>
>        x = ^10;<br>
>        x += ^10; x -= ^10; x *= ^10; x /= ^10; x %= ^10;<br>
>        x + ^10; x - ^10; x * ^10; x / ^10; x % ^10;<br>
>      })cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code1), Each("int"));<br>
> -  StringRef code2 = R"cpp(<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("int"));<br>
> +<br>
> +  Code = R"cpp(<br>
>      void test(float x) {<br>
>        x = ^10;<br>
>        x += ^10; x -= ^10; x *= ^10; x /= ^10; x %= ^10;<br>
>        x + ^10; x - ^10; x * ^10; x / ^10; x % ^10;<br>
>      })cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code2), Each("float"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("float"));<br>
><br>
>    // Pointer types.<br>
> -  StringRef code3 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(int *ptr) {<br>
>        ptr - ^ptr;<br>
>        ptr = ^ptr;<br>
>      })cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code3), Each("int *"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("int *"));<br>
><br>
> -  StringRef code4 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(int *ptr) {<br>
>        ptr + ^10;<br>
>        ptr += ^10;<br>
>        ptr -= ^10;<br>
>      })cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code4), Each("long")); // long is normalized 'ptrdiff_t'.<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("long")); // long is normalized 'ptrdiff_t'.<br>
><br>
>    // Comparison operators.<br>
> -  StringRef code5 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(int i) {<br>
>        i <= ^1; i < ^1; i >= ^1; i > ^1; i == ^1; i != ^1;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code5), Each("int"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("int"));<br>
><br>
> -  StringRef code6 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(int *ptr) {<br>
>        ptr <= ^ptr; ptr < ^ptr; ptr >= ^ptr; ptr > ^ptr;<br>
>        ptr == ^ptr; ptr != ^ptr;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code6), Each("int *"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("int *"));<br>
><br>
>    // Relational operations.<br>
> -  StringRef code7 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(int i, int *ptr) {<br>
>        i && ^1; i || ^1;<br>
>        ptr && ^1; ptr || ^1;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code7), Each("_Bool"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("_Bool"));<br>
><br>
>    // Bitwise operations.<br>
> -  StringRef code8 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(long long ll) {<br>
>        ll | ^1; ll & ^1;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code8), Each("long long"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("long long"));<br>
><br>
> -  StringRef code9 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      enum A {};<br>
>      void test(A a) {<br>
>        a | ^1; a & ^1;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code9), Each("enum A"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("enum A"));<br>
><br>
> -  StringRef code10 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      enum class A {};<br>
>      void test(A a) {<br>
>        // This is technically illegal with the 'enum class' without overloaded<br>
> @@ -263,10 +264,10 @@ TEST(PreferredTypeTest, BinaryExpr) {<br>
>        a | ^a; a & ^a;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code10), Each("enum A"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("enum A"));<br>
><br>
>    // Binary shifts.<br>
> -  StringRef code11 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      void test(int i, long long ll) {<br>
>        i << ^1; ll << ^1;<br>
>        i <<= ^1; i <<= ^1;<br>
> @@ -274,10 +275,10 @@ TEST(PreferredTypeTest, BinaryExpr) {<br>
>        i >>= ^1; i >>= ^1;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code11), Each("int"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("int"));<br>
><br>
>    // Comma does not provide any useful information.<br>
> -  StringRef code12 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      class Cls {};<br>
>      void test(int i, int* ptr, Cls x) {<br>
>        (i, ^i);<br>
> @@ -285,11 +286,11 @@ TEST(PreferredTypeTest, BinaryExpr) {<br>
>        (x, ^x);<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code12), Each("NULL TYPE"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("NULL TYPE"));<br>
><br>
>    // User-defined types do not take operator overloading into account.<br>
>    // However, they provide heuristics for some common cases.<br>
> -  StringRef code13 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      class Cls {};<br>
>      void test(Cls c) {<br>
>        // we assume arithmetic and comparions ops take the same type.<br>
> @@ -299,18 +300,18 @@ TEST(PreferredTypeTest, BinaryExpr) {<br>
>        c = ^c; c += ^c; c -= ^c; c *= ^c; c /= ^c; c %= ^c;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code13), Each("class Cls"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("class Cls"));<br>
><br>
> -  StringRef code14 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      class Cls {};<br>
>      void test(Cls c) {<br>
>        // we assume relational ops operate on bools.<br>
>        c && ^c; c || ^c;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code14), Each("_Bool"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("_Bool"));<br>
><br>
> -  StringRef code15 = R"cpp(<br>
> +  Code = R"cpp(<br>
>      class Cls {};<br>
>      void test(Cls c) {<br>
>        // we make no assumptions about the following operators, since they are<br>
> @@ -319,7 +320,7 @@ TEST(PreferredTypeTest, BinaryExpr) {<br>
>        c <<= ^c; c >>= ^c; c |= ^c; c &= ^c;<br>
>      }<br>
>    )cpp";<br>
> -  EXPECT_THAT(collectPreferredTypes(code15), Each("NULL TYPE"));<br>
> +  EXPECT_THAT(collectPreferredTypes(Code), Each("NULL TYPE"));<br>
>  }<br>
><br>
>  } // namespace<br>
><br>
><br>
> _______________________________________________<br>
> cfe-commits mailing list<br>
> <a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Regards,</div><div>Ilya Biryukov</div></div></div></div></div>