aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-09-29Call UpdateLineDirectiveRegion every time we want to emit a stopEric Christopher
point in the code. Ensures that we don't miss any places and the check is reasonably cheap. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140737 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-29Update comment.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140736 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28[driver] Add basic support for escaping XML characters in CC_LOG_DIAGNOSTICSChad Rosier
strings. rdar://9696709 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140732 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28objc arc: Diagnose block pointer type mismatch whenFariborz Jahanian
some arguments types are ns_consumed and some otherwise matching types are not. This is objc side of // rdar://10187884 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140729 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Check for empty predecessors for walking them.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140725 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28objc++ arc: Diagnose block pointer type mismatch whenFariborz Jahanian
some arguments types are ns_consumed and some otherwise matching types are not. This fixes the objc++ side only *auch*. // rdar://10187884 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140717 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Fix typo. string-convervion -> string-conversionRichard Trieu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140716 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Tweak -Wobjc-missing-super-calls to not warning about missing [super ↵Ted Kremenek
dealloc] when in GC-only mode, and to not warning about missing [super finalize] when not using GC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140713 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28For __weak/__strong/etc. ownership attributes, don't macro expand them in ↵Argyrios Kyrtzidis
diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140711 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Fix a typo spotted by Jonathan Sauer.Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140708 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Introduce non-const Decl::getParentFunctionOrMethod.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140707 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28[libclang] Introduce clang_Range_isNull.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140706 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Install c-index-test also on CMake build, following up r140681.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140694 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Attempt to silence the GCC -Wreturn-type warning...Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140693 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Generate tests for all of the x86 SIMD instruction feature setChandler Carruth
predefines based on the output of GCC as well as the CPU predefines. Invert tests for __AVX__, Clang's AVX feature is hard coded off still. Switch Atom from 'SSE3' to 'SSSE3'. This matches GCC's behavior, Intel's documentation, and ICC's documentation (such as I could dig up). Switch Athlon and Geode to enable 3dnowa rather than just 3dnow and nothing (resp.). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140692 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Add a little banner to this test. This lets my scripts more easilyChandler Carruth
automate the process of updating and generating these tests. If anyone is really interested, I can check my scripts for generating this test in, but its a horrible pile of shell... Not sure its really worth it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140691 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Fix a think-o on my part that got enshrined in a FIXME by setting up theChandler Carruth
__tune_...__ define as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140690 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Move some of the defines down to more natural locations, consolidatingChandler Carruth
the target identifying macros at the top, including subtarget macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140689 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Teach Clang to reject 32-bit only CPUs when compiling in 64-bit mode.Chandler Carruth
Add 64-bit preprocessor macro tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140688 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Simplify the control flow for predefined macro selection by usingChandler Carruth
fallthrough now that we're working with a switch. Also remove a dubious "feature" regarding k6 processors and 3dnow and leave a fixme... Not that anyone is likely to care about correct tuning for k6 processors with and w/o 3dnow... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140687 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Switch the X86TargetInfo object from a string representation of theChandler Carruth
selected CPU model to the enumeration. This parses the string representation once using a StringSwitch on SetCPU. It returns an error for strings which are not recognized (yay!). Finally it replaces ridiculous if-chains with switches that cover all enumerators. The last change required adding several missing entries to the features function. These were obvious on inspection. Yay for a pattern that gives warnings when we miss one. No new test cases yet, as I want to get the 64-bit errors working first. I'll then start fleshing out the testing more. Currently I'm primarily testing on Linux, but I'm hoping check whether there are interesting differences on darwin before long... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140685 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Introduce an enumeration for the x86 CPUs recognized by Clang. I'veChandler Carruth
tried to give these nice doxyments, but if I've gotten any of my history wrong, please chime in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140684 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Clean up a bit of the uses of CPU in the TargetInfo classes. This makesChandler Carruth
it an error if a CPU is provided for a target that doesn't implement logic handling CPU settings, to match the ABI settings. It also removes the CPU parameter from the getDefaultFeatures method. This parameter was always filled in with the same value as setCPU was called with, and at this point every single target implementation that referenced the CPU within this function has needed to store the CPU via setCPU anyways in order to implement other interface points. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140683 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Driver: Fix two bad typos that were breaking the buildbots.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140682 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Install c-index-test as part of install-clang-c Makefile rule.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140681 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Begin fixing Clang's predefined macros for various architectures. ThisChandler Carruth
is *very* much a WIP that I'll be refining over the next several commits, but I need to get this checkpoint in place for sanity. This also adds a much more comprehensive test for architecture macros, which is roughly generated by inspecting the behavior of a trunk build of GCC. It still requires some massaging, but eventually I'll even check in the script that generates these so that others can use it to append more tests for more architectures, etc. Next up is a bunch of simplification of the Targets.cpp code, followed by a lot more test cases once we can reject invalid architectures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140673 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28Introduce Decl::getParentFunctionOrMethod which if the decl is defined insideArgyrios Kyrtzidis
a function/method/block it returns the corresponding DeclContext, otherwise it returns null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140672 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-28[driver] If no OSX or iOS target has been specified and we're compiling for Chad Rosier
armv7, go ahead as assume we're targeting iOS. rdar://10147774 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140668 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27PR11002: Make sure we emit sentinel warnings with a valid source location. ↵Eli Friedman
(Ideally, we want to use the location returned by getLocForEndOfToken, but that is not always successful.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140658 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Include prefix with default synthesized ivars.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140657 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Only print _Bool as 'bool' when 'bool' is defined as an object-likeDouglas Gregor
macro whose only replacement token is '_Bool'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140656 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Remove the egregious hack that made Objective-C++ ARC work with olderDouglas Gregor
versions of libc++. Newer versions of libc++ know how to deal with ARC properly. Fixes <rdar://problem/10062179>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140651 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27When 'bool' is not a built-in type but is defined as a macro, printDouglas Gregor
'bool' rather than '_Bool' within types, to make things a bit more readable. Fixes <rdar://problem/10063263>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140650 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27objcetive-c-arc: When overriding a method, its ns_consumed patameterFariborz Jahanian
attribute must match its overriden method. Same also for ns_returns_retained/not_retained on the result type. This is one half of // rdar://10187884 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140649 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Fix a crash in MallocOverflowSecurityChecker. Patch by Lei Zhang.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140648 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Check for GCC paths that have the target triple in them. This is required ↵David Chisnall
for a lot of cross-compile toolchains. Also add some slightly better support for -B. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140645 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Get rid of useless helper Sema::CastCategory.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140642 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27If you download clang and delete the test directory, you can end upDouglas Gregor
with the copy line failing with an error, yet the make will complete successfully. From Greg Clayton! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140639 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27de-tmpify clang.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140637 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27[analyzer] Remove target triple from the malloc overflow test.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140635 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Some changes to improve compatibility for MSVC-style C++ struct layout. ↵Eli Friedman
Patch from r4start at gmail.com (with some minor modifications by me). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140623 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Document the incompatibility that stems from Clang properly implementDouglas Gregor
the rule that defines the implicit copy constructor/implicit copy asssignment operator as deleted when a move constructor or move assignment operator has been explicitly declared. This has hit a number of people because Boost 1.47.0's shared_ptr fails to declare a copy constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140621 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Move test, so it actually tests what it is supposed to (given that we don't ↵Eli Friedman
have an AST verifier). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140620 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Fix examples for r140478. PR11021.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140618 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27[libclang] Expose array size and element type, patch by Vinay Sajip!Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140614 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Constant evaluation for pointer CXXScalarValueInitExprPeter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140613 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Introduce a callback to PPCallbacks for lines skipped by the preprocessor.Argyrios Kyrtzidis
Patch by Jason Haslam! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140612 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Break SourceManager::translateFileLineCol into translateFile, no ↵Argyrios Kyrtzidis
functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140610 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27When parsing a character literal, extract the characters from theDouglas Gregor
buffer as an 'unsigned char', so that integer promotion doesn't sign-extend character values > 127 into oblivion. Fixes <rdar://problem/10188919>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140608 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-27Revert r139989 and r140031, which implemented the Objective-C typeDouglas Gregor
system change in <rdar://problem/10109725> that allows conversion from 'self' in class methods to the root of the class's hierarchy. This conversion rule is a hack that has non-trivial repurcussions (particularly with overload resolution). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140605 91177308-0d34-0410-b5e6-96231b3b80d8