Go to file
Vedant Kumar f224d707df [Coverage] Don't emit mappings for functions in dependent contexts (fixes PR32679)
The coverage implementation marks functions which won't be emitted as
'deferred', so that it can emit empty coverage regions for them later
(once their linkages are known).

Functions in dependent contexts are an exception: if there isn't a full
instantiation of a function, it shouldn't be marked 'deferred'. We've
been breaking that rule without much consequence because we just ended
up with useless, extra, empty coverage mappings. With PR32679, this
behavior finally caused a crash, because clang marked a partial template
specialization as 'deferred', causing the MS mangler to choke in its
delayed-template-parsing mode:

  error: cannot mangle this template type parameter type yet
  (http://bugs.llvm.org/show_bug.cgi?id=32679)

Fix this by checking if a decl's context is a dependent context before
marking it 'deferred'.

Based on a patch by Adam Folwarczny!

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

llvm-svn: 300723
2017-04-19 17:58:30 +00:00
clang [Coverage] Don't emit mappings for functions in dependent contexts (fixes PR32679) 2017-04-19 17:58:30 +00:00
clang-tools-extra [clang-tidy] misc-misplaced-widening-cast: Disable checking of implicit widening casts by default. 2017-04-19 14:55:58 +00:00
compiler-rt Skip tests that use 'llvm_xray' for standalone builds. 2017-04-19 17:20:47 +00:00
debuginfo-tests Add additional CHECKs to safestack.c. 2017-04-17 17:57:05 +00:00
libclc math: Implement sinh function 2017-02-25 02:46:53 +00:00
libcxx Fix tests for extended noexcept in the container adaptors tests 2017-04-19 02:07:12 +00:00
libcxxabi [CMake][libcxxabi] Fix the -target and -gcc-toolchain flag handling 2017-04-16 06:08:34 +00:00
libunwind [CMake][libunwind] Fix the -target and -gcc-toolchain flag handling 2017-04-16 06:08:44 +00:00
lld [ELF] Always use Script::assignAddresses() 2017-04-19 12:46:32 +00:00
lldb Fix TestRegisterVariables for clang/arm 2017-04-19 10:13:29 +00:00
llgo benchcomp: Add a mode for analyzing file sizes. 2017-04-03 19:13:12 +00:00
llvm [MathExtras] Fix undefined behavior (shift by bit width) 2017-04-19 17:46:15 +00:00
openmp Fix crash in invoking microtask on ios arm64. 2017-04-17 11:58:20 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly Update isl bindings to latest version (+ Polly extensions) 2017-04-15 08:15:54 +00:00