aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2010-05-25 04:30:21 +0000
committerJohn McCall <rjmccall@apple.com>2010-05-25 04:30:21 +0000
commit7cb0220e535958756f0c36788b370aebc07aea1f (patch)
tree9ded153a937343d25326b31eee351dff293d63bf /clang/lib/Frontend/CompilerInvocation.cpp
parent26fdebcae9321029dd0a474f2f38d669eebe1133 (diff)
downloadllvm-7cb0220e535958756f0c36788b370aebc07aea1f.zip
llvm-7cb0220e535958756f0c36788b370aebc07aea1f.tar.gz
llvm-7cb0220e535958756f0c36788b370aebc07aea1f.tar.bz2
If a function definition has any sort of weak linkage, its static local
variables should have that linkage. Otherwise, its static local variables should have internal linkage. To avoid computing this excessively, set a function's linkage before we emit code for it. Previously we were assigning weak linkage to the static variables of static inline functions in C++, with predictably terrible results. This fixes that and also gives better linkage than 'weak' when merging is required. llvm-svn: 104581
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions