[PATCH] D69266: [clangd] Define out-of-line availability checks

Kadir Cetinkaya via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Oct 25 00:38:53 PDT 2019


kadircet marked 6 inline comments as done.
kadircet added inline comments.


================
Comment at: clang-tools-extra/clangd/unittests/TweakTests.cpp:1548
+
+  ExtraFiles["Test.cpp"] = "";
+  // Basic check for function body and signature.
----------------
hokein wrote:
> Is this needed? It is unclear to me why we need it.
yeah not anymore, I was checking for existence of implementation file in the first version. but moved it from prepare to apply, forgot to update the test.


================
Comment at: clang-tools-extra/clangd/unittests/TweakTests.cpp:1556
+
+    [[void [[Bar::[[b^a^z]]]]() [[{
+      return;
----------------
hokein wrote:
> Sorry for not spotting it earlier.
> 
> Moving out-of-line methods is different than general functions, `void Bar::bar();` is illegal in C++ (C++ requires the out-of-line member declaration must be a definition). I think for this case, we could 1) delete the original method definition 2) disable the tweak. I slightly prefer 2) as out-of-line member definitions are rare in header files. WDYT?
oopsy thanks for spotting this. yeah I agree with 2.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D69266





More information about the cfe-commits mailing list