summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Access checking for overloaded operators.John McCall2010-01-284-5/+68
| | | | llvm-svn: 94725
* Fixes a rewrite bug rewriting nested ivars reference.Fariborz Jahanian2010-01-284-7/+45
| | | | | | (Radar 7583971). llvm-svn: 94724
* Add placeholder function in Sema for new format string checking logic.Ted Kremenek2010-01-282-1/+25
| | | | | | | | This function will use the format string parsing logic in libAnalysis, and once it is shown to be better than the current implementation it will replace AlternateCheckPrintfString() entirely. llvm-svn: 94721
* Fix 80 col violation.Ted Kremenek2010-01-281-1/+3
| | | | llvm-svn: 94717
* Allow HandleFormatSpecifier() to indicate that no more processing of the ↵Ted Kremenek2010-01-282-3/+4
| | | | | | format string is desired. llvm-svn: 94715
* Switch the remaining diagnostic printing in CIndex over to theDouglas Gregor2010-01-286-45/+59
| | | | | | | | | diagnostic callback mechanism, so all diagnostics now go through that callback. Also, eliminate the displayDiagnostics flag to clang_createIndex(), since it is no longer necessary: the client determines whether to display diagnostics or not. llvm-svn: 94714
* Add '@' conversion specifier.Ted Kremenek2010-01-282-5/+14
| | | | llvm-svn: 94713
* While emitting debugging infor for a C++ class, identify the holder of ↵Devang Patel2010-01-281-1/+11
| | | | | | class's vtable, if any. llvm-svn: 94712
* Include "this" pointer argument while emitting debug info for a C++ method.Devang Patel2010-01-282-1/+41
| | | | llvm-svn: 94710
* Implement a diagnostics callback for the C interface to Clang, so thatDouglas Gregor2010-01-289-121/+677
| | | | | | | | | | | | | | | | | | | | | | | | | clients can format diagnostics as they wish rather than having to parse standard error. All of the important parts of the front end's diagnostics are exposed: text, severity, location, source ranges, and fix-its. The diagnostics callback is now available with clang_createTranslationUnitFromSource() and clang_createTranslationUnit(). As part of this change, CXSourceLocation and CXSourceRange got one pointer larger, since we need to hold on to the SourceManager and LangOptions structures in the source location. This is the minimum amount of information needed for the functions that operate on source locations and ranges (as implemented now). Previously we held on to the ASTContext, but the diagnostics callback can end up with source locations when there is no ASTContext (or preprocessor). Still to do: - Code completion needs to support the diagnostics callback, once we have the ability to (de-)serialize diagnostics. - Eliminate the "displayDiagnostics" argument to createIndex; we'll always pass diagnostics to the callback and let it deal with display. llvm-svn: 94709
* Remove invalid conversion specifiers from format string checking.Ted Kremenek2010-01-282-10/+0
| | | | llvm-svn: 94707
* Add a few more conversion specifiers to ParseFormatSpecifier (these appear ↵Ted Kremenek2010-01-281-20/+27
| | | | | | in SemaChecking). llvm-svn: 94704
* Add skeleton for a more structured way to analyzing pring formatTed Kremenek2010-01-273-0/+422
| | | | | | | | | | | | | | | | | | | | | | strings than what we currently have in Sema. This is both an experiment and a WIP. The idea is simple: parse the format string incrementally, constructing a well-structure representation of each format specifier. Each format specifier is then handed back one-by-one to a client via a callback. Malformed format strings are also handled with callbacks. The idea is to separate the parsing of the format string from the emission of diagnostics. Currently what we have in Sema for handling format strings is a mongrel of both that is hard to follow and difficult to modify (I can apply this label since I'm the original author of that code). This is in libAnalysis as it is reasonable generic and can potentially be used both by libSema and libChecker. Comments welcome. llvm-svn: 94702
* Remove ModuleProviders from clang after r94686 removed them from LLVM.Jeffrey Yasskin2010-01-271-8/+4
| | | | llvm-svn: 94688
* ARM/APCS: Fix alignment of long double.Daniel Dunbar2010-01-272-1/+21
| | | | llvm-svn: 94685
* Move more naming conventions logic out of the retain/release checker to ↵Ted Kremenek2010-01-273-92/+90
| | | | | | CocoaConventions.h. llvm-svn: 94682
* Change the return type of ASTContext::getDeclAlignInBytes() to CharUnits and,Ken Dyck2010-01-277-38/+49
| | | | | | | now that the "InBytes" part of the name is implied by the return type, rename it to getDeclAlign(). llvm-svn: 94681
* Use raw_ostreams in Preprocessor::ExpandBuiltinMacro. Still not nice but ↵Benjamin Kramer2010-01-271-19/+17
| | | | | | less fragile than the old code. llvm-svn: 94679
* Add missing call to Optional<...>.getValue() that was pointed out by Chandler.Ted Kremenek2010-01-271-1/+1
| | | | llvm-svn: 94678
* Use getTypeAlignInChars() for alignment in VisitSizeOfAlignOfExpr().Ken Dyck2010-01-271-1/+1
| | | | llvm-svn: 94677
* Unique ObjC strings (GNU Runtime); fix for PR6142. Note: Doing this in the ↵David Chisnall2010-01-271-2/+10
| | | | | | runtime-specific code is a bit ugly. It would be a good idea to hoist all of the string / protocol uniqueing code up into CGObjCRuntime or CodeGenModule and only handle emitting the original versions in the runtime-specific code. llvm-svn: 94676
* Silence a GCC warning about uninitialized variables. The first user of thisChandler Carruth2010-01-271-1/+1
| | | | | | showed up with a primitive type. llvm-svn: 94674
* fix a bug in the _MM_TRANSPOSE4_PS definition, patch by Brian Sumner fromChris Lattner2010-01-271-1/+1
| | | | | | PR6138 llvm-svn: 94669
* Fix libCIndex.so's lookup of the clang executable on CMake out-of-tree builds.Chandler Carruth2010-01-271-1/+1
| | | | llvm-svn: 94668
* Remove unnecessary ASTContext* argument from isRefType().Ted Kremenek2010-01-271-5/+5
| | | | llvm-svn: 94665
* Update CMake build.Ted Kremenek2010-01-271-0/+1
| | | | llvm-svn: 94663
* Start pulling out pieces of the monolithic retain/release checker intoTed Kremenek2010-01-274-125/+223
| | | | | | | | | reusable and modular API pieces. Start by pulling the logic for deriving the Cocoa naming convention into a separate API, header, and source file. llvm-svn: 94662
* Set -ccc-host-triple in these tests.Daniel Dunbar2010-01-271-6/+6
| | | | llvm-svn: 94661
* Fix a major oversight in the comparison of standard conversionDouglas Gregor2010-01-276-41/+94
| | | | | | | | | | | | | | sequences, where we would occasionally determine (incorrectly) that one standard conversion sequence was a proper subset of another when, in fact, they contained completely incomparable conversions. This change records the types in each step within a standard conversion sequence, so that we can check the specific comparison types to determine when one sequence is a proper subset of the other. Fixes this testcase (thanks, Anders!), which was distilled from PR6095 (also thanks to Anders). llvm-svn: 94660
* Implement access-check delays for out-of-line member definitionsJohn McCall2010-01-274-28/+162
| | | | | | using the same framework we use for deprecation warnings. llvm-svn: 94659
* Add support for 3dnow and 3dnowa, and define the target macros accordingly. ↵Anders Carlsson2010-01-271-1/+23
| | | | | | (This is needed in order to build Qt). llvm-svn: 94658
* It's not Explicit anymore.Anders Carlsson2010-01-271-1/+1
| | | | llvm-svn: 94657
* Structs and classes with non-trivial destructors or copy constructors should ↵Anders Carlsson2010-01-271-2/+10
| | | | | | be passed indirectly in the 32-bit ABI. Fixes PR6094. llvm-svn: 94656
* Update the xcode project for real and don't check in a failing test.Anders Carlsson2010-01-271-4/+6
| | | | llvm-svn: 94655
* Update xcode project.Anders Carlsson2010-01-271-0/+24
| | | | llvm-svn: 94654
* XFAIL this for now.Anders Carlsson2010-01-271-1/+1
| | | | llvm-svn: 94653
* Fix test/CodeGenCXX/default-destructor-synthesis.cpp not to rely on asm output.Anders Carlsson2010-01-271-47/+25
| | | | llvm-svn: 94652
* Fix attr.cpp by not checking the generated assembler output.Anders Carlsson2010-01-271-24/+5
| | | | llvm-svn: 94651
* Implement access control for overloaded functions. Suppress access controlJohn McCall2010-01-2711-105/+276
| | | | | | | diagnostics in "early" lookups, such as during typename checks and when building unresolved lookup expressions. llvm-svn: 94647
* Clarify the documentation of ext_vector, and add a small example. HopefullyOwen Anderson2010-01-271-3/+19
| | | | | | | | this will alleviate some confusion about the existence of this feature. Comments/improvements welcome. llvm-svn: 94645
* Support -marm by treating it as an alias for -mno-thumb.Daniel Dunbar2010-01-271-0/+3
| | | | llvm-svn: 94644
* Driver/Darwin: Eliminate invalid uses of DarwinVersion -- this fixes a number ofDaniel Dunbar2010-01-273-22/+29
| | | | | | defaults when targetting iPhoneOS (blocks, non-fragile ABI, stack protector). llvm-svn: 94642
* Driver/Darwin: Simplify target version checks.Daniel Dunbar2010-01-273-65/+32
| | | | llvm-svn: 94641
* Driver/Darwin: Fix a few link arguments when targetting different iPhoneOSDaniel Dunbar2010-01-273-7/+59
| | | | | | versions to match gcc (which is matching linker changes). llvm-svn: 94640
* Driver/Darwin: Switch clang -triple synthesis to use computed target ↵Daniel Dunbar2010-01-271-31/+17
| | | | | | information. llvm-svn: 94639
* Driver/Darwin: Eliminate confusing IsIPhoneOS parameter -- this was actuallyDaniel Dunbar2010-01-273-38/+19
| | | | | | just indicating whether the default target should be iPhoneOS. llvm-svn: 94638
* Driver/Darwin: Switch to using isTargetIPhoneOS where appropriate.Daniel Dunbar2010-01-272-7/+7
| | | | llvm-svn: 94637
* Driver/Darwin: Disallow -m{macosx,iphoneos}-version-min as -Xarch arguments.Daniel Dunbar2010-01-271-2/+2
| | | | llvm-svn: 94636
* Driver/Darwin: Track target platform more explicitly in tool chain, eventuallyDaniel Dunbar2010-01-273-13/+78
| | | | | | | this should just be part of the tool chain itself once we have eliminated argument translation. llvm-svn: 94635
* Add const version of ObjCMethodDecl::getCanonicalDecl().Ted Kremenek2010-01-271-0/+3
| | | | llvm-svn: 94633
OpenPOWER on IntegriCloud