[libcxx-commits] [PATCH] D114658: [WIP] [libc++] [test] Several test-code refactorings.

Arthur O'Dwyer via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Nov 26 18:05:41 PST 2021


Quuxplusone added inline comments.


================
Comment at: libcxx/test/std/strings/string.view/string.view.comparison/opeq.pass.cpp:49-52
+            assert((v[i].data() == v[j]) == expected);
+            assert((v[i] == v[j].data()) == expected);
+            assert((ConvertibleTo<SV>(v[i]) == v[j]) == expected);
+            assert((v[i] == ConvertibleTo<SV>(v[j])) == expected);
----------------
jloser wrote:
> Quuxplusone wrote:
> > I expected these to fail-to-compile on clang-cl, for the reasons discussed (at length!) in D113161; but it didn't fail, at least not on buildkite. Strange.
> Any ideas why it doesn't fail on `clang-cl` on buildkit?
Since these functions are small inline functions, they probably just get inlined everywhere, so the colliding symbols are never actually generated. I hypothesize that clang-cl might not bother to complain unless the symbols are actually generated (e.g. by taking the addresses of these functions, or by failing to inline them). Of course then I still don't understand why it was complaining in your case and //not// mine.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114658/new/

https://reviews.llvm.org/D114658



More information about the libcxx-commits mailing list