aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-11-28Notes through another month... a *really* busy month, but mostly bugChandler Carruth
fixing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145237 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28Add the first month's commit notes.Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145236 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28Install c-index-test and clang-c/Index.h as internal files. rdar://10217046Bob Wilson
Specify that these files should be installed to the optional internal install location as specified by configure's --with-internal-prefix. If that option is not used, they'll be installed to the default prefix as before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145235 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28Begin sketching out the Clang release notes. The plan is to link toChandler Carruth
these more detailed notes from the primary LLVM release notes for Clang. This gives us a nice place to flesh out in plenty of detail the major changes that have happened in Clang land since 2.9. I've outlined a very rough structure based on the LLVM release notes structure and what seems like useful divisions in the Clang landscape (e.g., language-specific stuff is relevant to a narrower audience). I'll be first converting my brain-dump-ish notes from the commit logs, and then cleaning here. Suggestions on structure welcome. Typo corrections, spelling fixes (oh how I'll need them), all welcome; just commit away. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145233 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28test/lit.cfg: Enhance getRegisteredTargets() to retrieve +Asserts.NAKAMURA Takumi
- s/getRegisteredTargets/get_llc_props/g - get_llc_props() returns dict {"set_of_targets", "enable_assertions"} - Enable the feature "asserts". test/Driver/darwin-verify-debug.c had expected it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145231 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28[libclang] Indexing API: If the client requested to get a CXTranslationUnit ↵Argyrios Kyrtzidis
after indexing, honor all the TU options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145229 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28[libclang] Indexing API: Capture diagnostics during indexing.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145228 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28Another silly workaround for MSVC.Peter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145227 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28[arcmt] Integrate GC __weak into property attributes even when we don't haveArgyrios Kyrtzidis
the implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145224 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28Sigh, another workaround for MSVC.Peter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145211 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28[arcmt] Don't add __weak if there is already a GC __weak and make sure to clearArgyrios Kyrtzidis
__weak from a readonly property. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145210 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28Work around a gcc4.2 bug.Peter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145209 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27In Sema::MaybeBindToTemporary, create a CXXBindTemporaryExpr for anPeter Collingbourne
array of objects with non-trivial destructors. PR11365. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145203 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27When destroying temporaries, instead of a custom cleanup use thePeter Collingbourne
generic pushDestroy function. This would reduce the number of useful declarations in CGTemporaries.cpp to one. Since CodeGenFunction::EmitCXXTemporary does not deserve its own file, move it to CGCleanup.cpp and delete CGTemporaries.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145202 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27Make our handling of MMX x SSE closer to what gcc does:Rafael Espindola
* Enabling sse enables mmx. * Disabling (-mno-mmx) mmx, doesn't disable sse (we got this right already). * The order in not important. -msse -mno-mmx is the same as -mno-mmx -msse. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145194 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27Add inreg attributes to reference arguments.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145189 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27Reference initialization with initializer lists.Sebastian Redl
This supports single-element initializer lists for references according to DR1288, as well as creating temporaries and binding to them for other initializer lists. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145186 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27Error on non x86 architectures.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145185 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27Fix file name in comments.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145184 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27Use libcxx makefile's do-installhdrs target. <rdar://problem/10397739>Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145168 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-26Add the minimum implementation of cpuid.h. This works on "modern" intel cpusRafael Espindola
and on clang, which seams to handled "=b" correctly even when ebx is the PIC register. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145149 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-26Test commitNicola Gigante
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145147 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-26Fixed lexical declaration context when instantiating a friend / out-of-line ↵Abramo Bagnara
class template member. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145146 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-26Set __OPTIMIZE_SIZE__ on -Os and -Oz. This matches gcc's behaviour on both OS XRafael Espindola
and linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145142 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-25In Microsoft mode, make "Unqualified lookup into dependent bases of class ↵Francois Pichet
templates" works inside a friend function definition at class scope. Basically we have to look into the parent *lexical* DeclContext for friend functions at class scope. That's because calling GetParent() return the namespace or file DeclContext. This fixes all remaining cases of "Unqualified lookup into dependent bases of class templates" when parsing MFC code with clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145127 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-24Fix typo (becuase->because), PR11427David Blaikie
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145117 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-24Wordsmith the -Warray-bounds diagnostic text a bitMatt Beaumont-Gay
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145116 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23Add feature to diagnostics that will provide more information on functionRichard Trieu
pointer mismatch. Cases covered are: initialization, assignment, and function arguments. Additional text will give the extra information about the nature of the mismatch: different classes for member functions, wrong number of parameters, different parameter type, different return type, and function qualifier mismatch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145114 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23[PCH] Check for isTopLevelDeclInObjCContainer when picking abbreviations.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145110 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23[libclang] Fix operations (token annotation, getting cursor, etc.) with a ↵Argyrios Kyrtzidis
file region inside an objc container that "contains" other file-level declarations. When getting the array of file-level declarations that overlap with a file region, we failed to report that the region overlaps with an objc container, if the container had other file-level declarations declared lexically inside it. Fix this by marking such declarations as "isTopLevelDeclInObjCContainer" in the AST and handling them appropriately. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145109 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23Remove an assertion that is not valid if we cancel parsing.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145108 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23[libclang] Indexing API: Fix issues, mostly C++ related.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145107 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23AAPCS compliance - 32-bit wchar_t should be unsigned for both aapcs and ↵James Molloy
aapcs-linux. Original behaviour of defining wchar_t as signed int has been kept for apcs-gnu as I don't have any spec for this to validate against. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145102 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-23Don't check alignment, it's irrelevant to this test.Richard Smith
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145093 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-22Use static storage duration for file-scope compound literals, even when theyRichard Smith
appear in non-constant initializers in C++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145087 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-22Remove assert from hot code path and add a clarifying comment.Benjamin Kramer
The assert wasn't adding much value but slowed down Release+Asserts builds. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145082 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-22Provide better source info for template specializations with non-type arguments.Matt Beaumont-Gay
This fixes a crasher in tools like Include-What-You-Use which examine such arguments. Patch from Dean Sturtevant at Google! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145077 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-22Lexer: Don't throw away the hard work SSE did to find a slash.Benjamin Kramer
We can reuse the information and avoid looping over all the bytes again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145070 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-22[libclang] Indexing API: Support C++ symbols.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145058 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-22implement __has_feature(address_sanitizer); also use ↵Kostya Serebryany
LangOpts.AddressSanitizer instead of CodeGenOpts.AddressSanitizer git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145054 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Un-XFAIL this test on Darwin, it reportedly passes now.Peter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145052 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Add stub section to the user manual for C++ language features, and documentRichard Smith
-ftemplate-depth= and -fconstexpr-depth= in it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145049 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Add driver arguments -ftemplate-depth=N and -fconstexpr-depth=N, with the sameRichard Smith
semantics and defaults as the corresponding g++ arguments. The historical g++ argument -ftemplate-depth-N is kept for compatibility, but modern g++ versions no longer document that option. Add -cc1 argument -fconstexpr-depth N to implement the corresponding functionality. The -ftemplate-depth=N part of this fixes PR9890. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145045 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Change the linker emulation name for FreeBSD/PPC32.Roman Divacky
Submitted by Andreas Tobler! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145041 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21CodeGen: Simplify code.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145040 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Delete the depfile if we could not open a header file. We cannotPeter Collingbourne
generate any reasonable depfile if a header is missing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145019 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Teach the driver about failure result files, which are compilationPeter Collingbourne
output files that are valid regardless of whether the compilation succeeded or failed (but not if we crash). Add depfiles to the failure result file list. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145018 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-21Create the clang++ symlink as a POST_BUILD custom command on clang.Peter Collingbourne
This saves us from re-creating the symlink on every build even if we didn't rebuild clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145017 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-20CodeGen: allow __asm renaming on static local variables.Benjamin Kramer
Fixes PR4777. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145015 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-20Allow preprocessor callbacks to recover from a "file not found" error,Douglas Gregor
from Jason Haslam! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145012 91177308-0d34-0410-b5e6-96231b3b80d8