summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Minor format fix.Evan Cheng2011-04-081-2/+2
| | | | llvm-svn: 129164
* Document -ftrap-function= optionEvan Cheng2011-04-081-0/+12
| | | | llvm-svn: 129162
* Do not use zero as an upper bound for unbounded array because upper bound ↵Devang Patel2011-04-081-6/+17
| | | | | | zero also indicates one element array. llvm-svn: 129157
* Rename -mtrap_function= to -ftrap_function= since it's now a target neutral ↵Evan Cheng2011-04-082-13/+9
| | | | | | options. llvm-svn: 129153
* Add -mtrap_function=<> option. rdar://9257465Evan Cheng2011-04-082-0/+13
| | | | llvm-svn: 129145
* Use ExprResult& instead of Expr *& in SemaJohn Wiegley2011-04-0817-1406/+1856
| | | | | | | | | | | | | | | | | | | | | | | | | This patch authored by Eric Niebler. Many methods on the Sema class (e.g. ConvertPropertyForRValue) take Expr pointers as in/out parameters (Expr *&). This is especially true for the routines that apply implicit conversions to nodes in-place. This design is workable only as long as those conversions cannot fail. If they are allowed to fail, they need a way to report their failures. The typical way of doing this in clang is to use an ExprResult, which has an extra bit to signal a valid/invalid state. Returning ExprResult is de riguour elsewhere in the Sema interface. We suggest changing the Expr *& parameters in the Sema interface to ExprResult &. This increases interface consistency and maintainability. This interface change is important for work supporting MS-style C++ properties. For reasons explained here <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2011-February/013180.html>, seemingly trivial operations like rvalue/lvalue conversions that formerly could not fail now can. (The reason is that given the semantics of the feature, getter/setter method lookup cannot happen until the point of use, at which point it may be found that the method does not exist, or it may have the wrong type, or overload resolution may fail, or it may be inaccessible.) llvm-svn: 129143
* Warn for any kind of initialization if initializer does notFariborz Jahanian2011-04-086-7/+96
| | | | | | | implement lhs's protocols. // rdar://9091389. llvm-svn: 129142
* fix a typo, patch by PaX team.Chris Lattner2011-04-081-1/+1
| | | | llvm-svn: 129141
* Switch 'is possibly uninitialized' to 'may be uninitialized' based onChandler Carruth2011-04-083-15/+15
| | | | | | Chris's feedback. llvm-svn: 129127
* Now that the analyzer is distinguishing between uninitialized uses thatChandler Carruth2011-04-085-23/+24
| | | | | | | definitely have a path leading to them, and possibly have a path leading to them; reflect that distinction in the warning text emitted. llvm-svn: 129126
* Driver: Don't attempt to forward some Clang-only options to cc1.Daniel Dunbar2011-04-072-4/+11
| | | | llvm-svn: 129108
* Frontend/CC_LOG_DIAGNOSTICS: Fix thinko and open diag log in append mode.Daniel Dunbar2011-04-071-1/+1
| | | | llvm-svn: 129103
* Teach -Wuninitialized to not warn about variables declared in C++ catch ↵Ted Kremenek2011-04-072-0/+15
| | | | | | statements. llvm-svn: 129102
* Fronted/CC_LOG_DIAGNOSTICS: Add test case.Daniel Dunbar2011-04-071-0/+29
| | | | llvm-svn: 129097
* Fronted/CC_LOG_DIAGNOSTICS: Wire up dwarf-debug-flags support.Daniel Dunbar2011-04-072-6/+15
| | | | llvm-svn: 129095
* Fronted/CC_LOG_DIAGNOSTICS: Output main file name, and add support forDaniel Dunbar2011-04-072-2/+27
| | | | | | outputting dwarf-debug-flags. llvm-svn: 129094
* Fronted/CC_LOG_DIAGNOSTICS: Tweak output form to be plist chunks, and don'tDaniel Dunbar2011-04-071-11/+25
| | | | | | output missing data. llvm-svn: 129093
* Frontend: Continue flushing out LogDiagnosticPrinter.Daniel Dunbar2011-04-072-8/+105
| | | | llvm-svn: 129091
* Frontend: Sketch a LogDiagnosticPrinter object, and wire CC_LOG_DIAGNOSTICS toDaniel Dunbar2011-04-074-0/+120
| | | | | | it. llvm-svn: 129089
* ChainedDiagnosticClient: Fix a bug where chained diagnostic clients wouldn'tDaniel Dunbar2011-04-071-0/+3
| | | | | | accurately track warning/error counts. llvm-svn: 129088
* Frontend: Sketch support for -diagnostic-log-file, which still doesn't do ↵Daniel Dunbar2011-04-074-1/+11
| | | | | | anything. llvm-svn: 129086
* Enhance the Rewriter.Argyrios Kyrtzidis2011-04-072-11/+127
| | | | | | | -Allow removing a line completely if it ends up empty -Provide more control on what should be removed. llvm-svn: 129085
* Add FullSourceLoc::BeforeThanCompare. a comparison function class, useful ↵Argyrios Kyrtzidis2011-04-071-0/+9
| | | | | | for sorting FullSourceLocs. llvm-svn: 129084
* Driver: Sketch driver support for a CC_LOG_DIAGNOSTICS options, similar to theDaniel Dunbar2011-04-075-4/+27
| | | | | | | existing CC_PRINT_OPTIONS and CC_PRINT_HEADERS, which can be used to transparently capture the compiler diagnostics from a build. llvm-svn: 129082
* [Reapply r128776, modified so that it does not break debug info.]Ken Dyck2011-04-075-12/+18
| | | | | | | Change the return type of CodeGenVTables::getVirtualBaseOffsetOffset() to CharUnits. No change in functionality intended. llvm-svn: 129072
* In C++ the argument of logical not should always be bool. Added missing ↵Abramo Bagnara2011-04-074-15/+30
| | | | | | implicit cast for scalars. llvm-svn: 129066
* Basic, untested implementation for an "unknown any" type requested by LLDB.John McCall2011-04-0732-56/+308
| | | | | | | | | | | | The idea is that you can create a VarDecl with an unknown type, or a FunctionDecl with an unknown return type, and it will still be valid to access that object as long as you explicitly cast it at every use. I'm still going back and forth about how I want to test this effectively, but I wanted to go ahead and provide a skeletal implementation for the LLDB folks' benefit and because it also improves some diagnostic goodness for placeholder expressions. llvm-svn: 129065
* [Reapply r128773. This is not the source of the issues Devang was seeingKen Dyck2011-04-072-6/+6
| | | | | | | | | with debug info.] Use CharUnits for the offsets in the VirtualBaseClassOffsetOffsetsMapTy. No change in functionality intended. llvm-svn: 129048
* [Reapply r128771. It wasn't the source of the issues Devang saw with debugKen Dyck2011-04-071-4/+4
| | | | | | | | | info.] Use CharUnits for the offset type in the ClassNamesAndOffsets map in dumpLayout(). No change in functionality intended. llvm-svn: 129046
* Reapply r128770. It's not the cause of the issues Devang saw with debug info. Ken Dyck2011-04-071-8/+11
| | | | | | | Use CharUnits for the offsets in the VBaseOffsetOffsetsMapTy types. No change in functionality intended. llvm-svn: 129043
* I can't figure out any reasonable way to make this test non-host-dependent,John McCall2011-04-061-47/+0
| | | | | | so I'm killing it. llvm-svn: 129026
* Wide Pascal strings should be of type wchar_t[] and not unsigned char[].Anders Carlsson2011-04-062-2/+6
| | | | llvm-svn: 129017
* Fix lookup for class messages sent to qualified-classFariborz Jahanian2011-04-065-30/+91
| | | | | | | types such that protocols are seached first. Fixes // rdar://9224670 llvm-svn: 129016
* Add support for Fedora16, gcc 4.6.0 and Fedora Rawhide.Eric Christopher2011-04-062-7/+21
| | | | | | Patch by Bobby Powers llvm-svn: 129014
* Added link to LLVM cmake page in Visual Studio section.John Thompson2011-04-061-0/+7
| | | | llvm-svn: 129013
* Refine rules for atomic property api toFariborz Jahanian2011-04-062-3/+19
| | | | | | | pass a previously failing clang test. // rdar://8808439 llvm-svn: 129004
* Do not use IR marker for LLVM intrinsicsPeter Collingbourne2011-04-062-2/+12
| | | | llvm-svn: 129001
* If this is an intrinsic function, set the function's attributes to the ↵Peter Collingbourne2011-04-061-0/+7
| | | | | | intrinsic's attributes. llvm-svn: 129000
* When updating the retain summary based on {cf,ns}_consumed attributes,John McCall2011-04-062-1/+8
| | | | | | | be sure to consume the argument index that actually had the attribute rather than always the first. rdar://problem/9234108 llvm-svn: 128998
* Make this a -cc1 test with a triple and a target feature.John McCall2011-04-061-1/+1
| | | | llvm-svn: 128993
* Anonymify this test.John McCall2011-04-061-6/+6
| | | | llvm-svn: 128987
* Implement the AVX cmp builtins as macros instead of static inlines.John McCall2011-04-062-30/+59
| | | | | | Patch by Syoyo Fujita! Reviewed by Chris Lattner! Checked in by me! llvm-svn: 128984
* Diagnose a missing ')' on what looks like a statement expression.John McCall2011-04-062-1/+12
| | | | | | | A situation where we can get an invalid ExprResult without an error. Fixes PR8394. Patch by Justin Bogner! llvm-svn: 128979
* Fix getLocForEndOfToken to not double-count spurious internal characters John McCall2011-04-061-1/+1
| | | | | | | within a token, like trigraphs and escaped newlines. Patch by Marcin Kowalczyk! llvm-svn: 128978
* Add a test case for r128957. It fixed a bug!Devang Patel2011-04-061-0/+15
| | | | llvm-svn: 128966
* Simplify.Devang Patel2011-04-051-3/+1
| | | | llvm-svn: 128957
* Fixes a regression caused by my last patch. Fariborz Jahanian2011-04-052-2/+2
| | | | | | | As a result, I had to remove a c++ version of a clang test which requires more scrutiny on my part. llvm-svn: 128950
* Emit debug info for function template parameters.Devang Patel2011-04-053-15/+62
| | | | llvm-svn: 128948
* Add ToolChain support to get Clang to recognize Ubuntu/ppc and Gentoo/ppc64.Ted Kremenek2011-04-052-10/+39
| | | | llvm-svn: 128944
* Generate atomic api for atomic properties (x86 and x86_64Fariborz Jahanian2011-04-052-8/+139
| | | | | | | targets) when load/store results in multiple instructions. // rdar://8808439 llvm-svn: 128937
OpenPOWER on IntegriCloud