Go to file
Akira Hatanaka 2246167362 [Sema] Mark a virtual CXXMethodDecl as used if a call to it can be
devirtualized.

The code to detect devirtualized calls is already in IRGen, so move the
code to lib/AST and make it a shared utility between Sema and IRGen.

This commit fixes a linkage error I was seeing when compiling the
following code:

$ cat test1.cpp
struct Base {
  virtual void operator()() {}
};

template<class T>
struct Derived final : Base {
  void operator()() override {}
};

Derived<int> *d;

int main() {
  if (d)
    (*d)();
  return 0;
}

rdar://problem/33195657

Differential Revision: https://reviews.llvm.org/D34301

llvm-svn: 307883
2017-07-13 06:08:27 +00:00
clang [Sema] Mark a virtual CXXMethodDecl as used if a call to it can be 2017-07-13 06:08:27 +00:00
clang-tools-extra clang-tools-extra/test/clang-tidy/performance-unnecessary-value-param-header.cpp: Resolve flakiness in the test. 2017-07-13 02:06:30 +00:00
compiler-rt [compiler-rt][X86] Match the detection of cpu's for __cpu_model to the latest version of gcc 2017-07-13 02:56:24 +00:00
debuginfo-tests Add a test for PR33166. 2017-05-25 19:33:16 +00:00
libclc generic: add missing get_work_dim include 2017-06-02 15:58:35 +00:00
libcxx Fix unrepresentable enum for clang-cl unstable ABI 2017-07-12 01:45:13 +00:00
libcxxabi Remove dependancy on __refstring header; use local copy instead. 2017-07-12 01:34:21 +00:00
libunwind [libunwind][CMake] Add install path variable to allow overriding the destination 2017-07-11 01:12:09 +00:00
lld Refactor gdb index creation. 2017-07-12 23:56:53 +00:00
lldb Upstreaming a patch from Github: When evaluation user expressions, ignore InstrumentationRuntime breakpoints. (#235) 2017-07-13 04:35:27 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm [llvm-objdump] Correctly distinguish between the MachO upper/lower16 relocations 2017-07-13 05:54:08 +00:00
openmp Rename z_Linux_asm.s to z_Linux_asm.S 2017-07-11 18:04:56 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00