]>
granicus.if.org Git - clang/log
Daniel Dunbar [Sat, 4 Oct 2008 19:45:56 +0000 (19:45 +0000)]
De-XFAIL test/Parser/pragma-pack.c
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57069
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Oct 2008 19:43:25 +0000 (19:43 +0000)]
switch to using -verify
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57068
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Oct 2008 19:38:15 +0000 (19:38 +0000)]
Move the expected-warning lines to a place that clang -verify will pick them
up. Speculatularly hacktastic, but strangely beautiful?
Daniel, lines 20/21 are rejected, please investigate.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57067
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 4 Oct 2008 19:21:03 +0000 (19:21 +0000)]
Add Parser support for #pragma pack
- Uses Action::ActOnPragmaPack
- Test case is XFAIL pending verifier fixes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57066
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 4 Oct 2008 19:17:46 +0000 (19:17 +0000)]
Add Preprocessor::RemovePragmaHandler.
- No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57065
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Sat, 4 Oct 2008 18:52:47 +0000 (18:52 +0000)]
Add indirection required for byref BlockDeclRefExpr's.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57063
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Sat, 4 Oct 2008 18:00:11 +0000 (18:00 +0000)]
Handle bookkeeping for imported blocks (in SynthesizeBlockImpl).
This code was "lost" with my recent changes to SynthesizeBlockFunc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57056
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 4 Oct 2008 17:55:52 +0000 (17:55 +0000)]
Add MemRegion.cpp to VS project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57055
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Sat, 4 Oct 2008 17:45:51 +0000 (17:45 +0000)]
Cut/paste error...need to use the expression "name" for member references (or other complex expressions that can embed a block pointer type)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57054
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Sat, 4 Oct 2008 17:10:02 +0000 (17:10 +0000)]
Clear the map that associated the rewritten block with it's corresponding BlockExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57053
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Sat, 4 Oct 2008 17:06:23 +0000 (17:06 +0000)]
Moved main control flow functions to bottom of file.
Reworked control flow to:
- rewrite the block expr body "in place".
- used Chris's new rewriter hook "getRewritenText" to "lift" the text for later use.
- finally, we do the block expr text replacement.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57052
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 4 Oct 2008 06:53:56 +0000 (06:53 +0000)]
Updated checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57045
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 4 Oct 2008 05:50:14 +0000 (05:50 +0000)]
This is a big patch, but the functionality change is small and the rest of the patch consists of deltas due to API changes.
This patch overhauls the "memory region" abstraction that was prototyped (but never really used) as part of the Store.h. This patch adds MemRegion.h and MemRegion.cpp, which defines the class MemRegion and its subclasses. This classes serve to define an abstract representation of memory, with regions being layered on other regions to to capture the relationships between fields and variables, variables and the address space they are allocated in, and so on.
The main motivation of this patch is that key parts of the analyzer assumed that all value bindings were to VarDecls. In the future this won't be the case, and this patch removes lval::DeclVal and replaces it with lval::MemRegionVal. Now all pieces of the analyzer must reason about abstract memory blocks instead of just variables.
There should be no functionality change from this patch, but it opens the door for significant improvements to the analyzer such as field-sensitivity and object-sensitivity, both which were on hold until the memory abstraction got generalized.
The memory region abstraction also allows type-information to literally be affixed to a memory region. This will allow the some now redundant logic to be removed from the retain/release checker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57042
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Sat, 4 Oct 2008 05:48:38 +0000 (05:48 +0000)]
Reverse the RHSBlock of LogicalOp && and ||
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57041
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 3 Oct 2008 23:31:37 +0000 (23:31 +0000)]
add a disclaimer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57038
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 3 Oct 2008 23:31:16 +0000 (23:31 +0000)]
add a new Rewriter::getRewritenText method that returns the text for a range
that includes any edits in the range.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57037
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 23:00:50 +0000 (23:00 +0000)]
Remove an old/vacuous if clause.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57036
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 20:28:15 +0000 (20:28 +0000)]
More fun & games with the block rewriter.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57028
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 3 Oct 2008 17:33:35 +0000 (17:33 +0000)]
Merge postfix attributes on record decls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57019
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 3 Oct 2008 16:42:10 +0000 (16:42 +0000)]
Remove a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57015
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 15:38:09 +0000 (15:38 +0000)]
Rewrite global block expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57004
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 15:04:50 +0000 (15:04 +0000)]
- Add a convenience constructor to Type.
- Many rewriter modifications.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57003
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 12:09:49 +0000 (12:09 +0000)]
Rework SynthesizeBlockImpl() to include a constructor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57001
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 3 Oct 2008 02:05:12 +0000 (02:05 +0000)]
Pass postfix attributes to ActOnFields (mismarked a file).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56993
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 3 Oct 2008 02:03:53 +0000 (02:03 +0000)]
Pass postfix attributes to ActOnFields.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56992
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 3 Oct 2008 01:54:54 +0000 (01:54 +0000)]
Bug fix, ccc was passing -std twice.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56991
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 00:12:09 +0000 (00:12 +0000)]
Get the right location to insert the synthesized block literals/functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56987
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 3 Oct 2008 00:02:03 +0000 (00:02 +0000)]
Add getTypeSpecStartLoc() to VarDecls and FunctionDecls.
This is a temporary solution to help with the block rewriter (though it certainly has general utility).
Once DeclGroup's are implemented, this SourceLocation should be stored with it (since it applies to all the decls).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56985
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Thu, 2 Oct 2008 23:30:43 +0000 (23:30 +0000)]
Name changes and some cleanup of preamble.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56984
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 23:30:31 +0000 (23:30 +0000)]
Add Builtins.def attribute for "can be a constant expression".
- Enabled for builtins which are always constant expressions
(__builtin_huge_val*, __builtin_inf*, __builtin_constant_p,
__builtin_classify_type, __builtin___CFStringMakeConstantString).
Added Builtin::Context::isConstantExpr.
- Currently overly simply interface which only works for builtins
whose constantexprness does not depend on their arguments.
CallExpr::isBuiltinConstantExpr now takes an ASTContext argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56983
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 18:44:07 +0000 (18:44 +0000)]
Add support for format string checking of object-size checking
versions of sprintf and friends.
- Added FIXME that this mechanism should be generalized.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56962
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 18:02:06 +0000 (18:02 +0000)]
Emit error unsupported for break/continue/goto inside Obj-C exception
handling blocks.
- This has false positives, but at least prevents miscompiles.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56958
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 17:26:37 +0000 (17:26 +0000)]
Fix ccc handling of -mmacosx-version-min.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56956
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Thu, 2 Oct 2008 17:12:56 +0000 (17:12 +0000)]
Changed Sema::CheckForConstantInitializer to allow global block literals.
This commit also includes some name changes in the blocks rewriter (no functionality change).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56955
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 17:05:36 +0000 (17:05 +0000)]
(LLVM up) Rename IRBuilder::IsNonNull -> IsNotNull.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56954
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 16:40:43 +0000 (16:40 +0000)]
Unbreak build: claim an extra bit for BuiltinID.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56952
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 01:21:33 +0000 (01:21 +0000)]
(llvm up) If the target triple is unspecified, automatically set the
OS version part to that of the host on darwin.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56943
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 2 Oct 2008 00:26:24 +0000 (00:26 +0000)]
Drop code to validate OS part of target triple on darwin, too fragile.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56941
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 1 Oct 2008 23:24:09 +0000 (23:24 +0000)]
Enhance NSError** checking with analogous checking for CFErrorRef*.
Expand checking to include functions, not just methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56938
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Wed, 1 Oct 2008 23:08:39 +0000 (23:08 +0000)]
Added SSE4.1 blend intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56936
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 1 Oct 2008 05:27:13 +0000 (05:27 +0000)]
Updated checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56916
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 1 Oct 2008 05:05:46 +0000 (05:05 +0000)]
Added test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56915
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 1 Oct 2008 05:02:13 +0000 (05:02 +0000)]
Use LVal::IsLValType(T) instead of checking to see if the type is an "lvalue" type directly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56912
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 1 Oct 2008 02:03:02 +0000 (02:03 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56909
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Oct 2008 01:10:22 +0000 (01:10 +0000)]
ccc: Use CCC_NATIVE=1 by default.
- So far this works fairly well for me for building applications
using clang as a gcc substitute. If you are using ccc for a
different purpose and this is a problem, speak up! Note you can
also use CCC_NATIVE=0 to disable.
- Also, turn CCC_ECHO off as default.
- Also, pass through -Wl, to linker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56904
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Oct 2008 01:06:06 +0000 (01:06 +0000)]
NeXT: Update to use CreateRuntimeFunction for the routines it imports.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56902
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Oct 2008 00:49:24 +0000 (00:49 +0000)]
Add simple interface for protecting runtime functions from name
collisions.
- Provide CodeGenModule::CreateRuntimeFunction which guarantees that
the function it creates will have the provided name in the final
module. This allows the runtime to have its functions protected
from declarations of the same name in the source code.
- One could argue that this is a reason to abuse the llvm::Module
namespace for dealing with function redeclarations. However, that
approach seems conceptually flawed to me. This one also happens to
be somewhat more efficient.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56899
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 1 Oct 2008 00:21:14 +0000 (00:21 +0000)]
Add a QualType to ConjuredSymbol to represent the type and size of the symbol.
Use this updated interface when invalidating arguments passed by reference; the type of symbol is of the object passed by reference, not the reference itself.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56894
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 23:40:25 +0000 (23:40 +0000)]
Support -mmacosx-version-min
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56892
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 23:23:58 +0000 (23:23 +0000)]
Set reproducibility back to "Always"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56891
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 22:54:22 +0000 (22:54 +0000)]
ccc: Add support for another batch of OS X linker options, including
-mmacosx-version-min.
One might anticipate that at some point I will just break down and go
through the man page. That seems a little too obvious.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56890
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 21:20:51 +0000 (21:20 +0000)]
ccc: Infer action type upfront.
- More straightforward, e.g. -E should always imply action =
'preprocess' (I think).
- Pass another option through for OS X.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56884
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 20:53:45 +0000 (20:53 +0000)]
simplify padding, just fold it into the earlier resize.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56880
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 20:51:14 +0000 (20:51 +0000)]
fix a potential buffer overrun that Eli noticed
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56879
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 20:49:53 +0000 (20:49 +0000)]
Fix help for --suppress-system-warnings
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56878
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 20:45:40 +0000 (20:45 +0000)]
Document assumptions that NumericLiteralParser makes with an assertion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56876
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 20:30:12 +0000 (20:30 +0000)]
Handle minor version numbers in __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
like "10.3.9"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56873
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 20:16:56 +0000 (20:16 +0000)]
Finish handling of -mmacosx-version-min. If you now do something like:
clang -mmacosx-version-min=10.4.9 ...
you'll end up with a target triple like "i686-apple-darwin8.9".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56871
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 17:54:44 +0000 (17:54 +0000)]
scan-view: Remove some debugging prints.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56864
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 17:53:26 +0000 (17:53 +0000)]
Updated checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56863
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 17:28:54 +0000 (17:28 +0000)]
Default reproducibility to "Not applicable"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56860
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 17:22:47 +0000 (17:22 +0000)]
Add diagnostic for .{lo,hi,e,o} on odd-sized extended vectors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56859
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 17:12:32 +0000 (17:12 +0000)]
Make "Performance" the default Radar classification for leaks. "Other" for all others (for now).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56858
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 17:00:30 +0000 (17:00 +0000)]
Make a separate parameter class for "Radar classifications".
Do not save the radar classification to the config file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56856
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 16:37:50 +0000 (16:37 +0000)]
Add "SelectionParameter" class to represent drop-down boxes.
Added "Classification" field to Radar filing.
Modified FileRadar.scpt to take the classification as an argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56854
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 16:18:31 +0000 (16:18 +0000)]
Change ccc to not pass -x unknown down.
Pass through some more Mac OS X linker options.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56853
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 16:11:33 +0000 (16:11 +0000)]
Conditionally load/save default parameter value from config file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56852
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 16:08:13 +0000 (16:08 +0000)]
Use objects to represent form parameters. This allows us to abstract away some
of the details of HTML rendering of form parameters, and also us with the
ability to delegate other actions (such as in the filling in of default values)
to specific parameter objects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56851
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 30 Sep 2008 14:38:43 +0000 (14:38 +0000)]
Fix <rdar://problem/
6191148 > [sema] Objective-C method lookup (at global scope) fails to handle overloaded selectors properly.
Long standing bug in Sema::ActOnInstanceMessage(). We now warn when messaging an "id" with multiple method signatures in scope. The diags are a little verbose, however they can be streamlined if necessary.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56843
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Tue, 30 Sep 2008 14:37:33 +0000 (14:37 +0000)]
fix test for latest changes in llvm asm representation
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56842
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 30 Sep 2008 10:07:56 +0000 (10:07 +0000)]
Improved fix for <rdar://problem/
6247781 > Parser rejecting properly mismatched properties.
Needed to make sure the relaxed type checking only applies to "readonly" properties.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56838
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Tue, 30 Sep 2008 07:18:57 +0000 (07:18 +0000)]
Add missing include for use of atoi.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56836
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 05:45:59 +0000 (05:45 +0000)]
Tabs -> Spaces.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56833
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 05:35:42 +0000 (05:35 +0000)]
Revert last patch, but add a fixme
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56832
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 30 Sep 2008 05:32:44 +0000 (05:32 +0000)]
Within the transfer function of UnaryOperatorExpr, handle implicit promotions
from the subexpression type to the expression type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56831
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Tue, 30 Sep 2008 05:31:27 +0000 (05:31 +0000)]
Added support for sse intrinsics loadlpd, loadhpd, muldq128, and mulld128
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56830
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 01:13:12 +0000 (01:13 +0000)]
start handling 'mmacosx-version-min', this is not complete yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56828
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Sep 2008 01:06:03 +0000 (01:06 +0000)]
Add infrastructure for proper @finally support.
- Provides a basic primitive to jump to an arbitrary basic block,
through the finally code.
- Only used for return statements and rethrow currently. Still need
to handle break, continue and goto.
- Code still needs to be shuffled around to live elsewhere.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56827
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 01:00:25 +0000 (01:00 +0000)]
The definition of __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ follows
the target triple on darwin. For example i386-apple-darwin9 -> 1050 because
darwin9 is "10.5".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56826
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 00:48:48 +0000 (00:48 +0000)]
define __PASCAL_STRINGS__ whenever -fpascal-strings is enabled.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56824
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Sep 2008 00:46:39 +0000 (00:46 +0000)]
__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ is a darwin-specific #define
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56822
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 30 Sep 2008 00:24:17 +0000 (00:24 +0000)]
Fix <rdar://problem/
6247781 > Parser rejecting properly mismatched properties.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56821
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 29 Sep 2008 23:33:12 +0000 (23:33 +0000)]
Updated checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56819
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 29 Sep 2008 23:12:31 +0000 (23:12 +0000)]
Fix the root cause of PR2750 instead of the side effect.
NumericLiteral parser is not careful about overrun because
it should never be possible. It implicitly expects that its
input matched the regex for pp-constant. Because of this, it
knows it can't be pointing to a prefix of something that
looks like a number. This is all fine, except that __LINE__
does not prevent implicit concatenation from happening. Fix
__LINE__ to not do this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56818
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 29 Sep 2008 23:06:09 +0000 (23:06 +0000)]
Really don't add -isysroot twice.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56815
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 29 Sep 2008 22:45:28 +0000 (22:45 +0000)]
Don't filter out -fpascal-strings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56810
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 29 Sep 2008 22:28:25 +0000 (22:28 +0000)]
Fix va_arg handling to do argument decaying at the correct place. This
fixes problems handling references of va_list, which happens on x86_64.
This fixes PR2841 and rdar://
6252231
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56809
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 29 Sep 2008 21:46:13 +0000 (21:46 +0000)]
Make some methods const, add some helpers to FullSourceLoc,
and add a dump method to FullSourceLoc! Patch by Nico Weber!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56806
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 29 Sep 2008 21:30:29 +0000 (21:30 +0000)]
move ExtVectorElementExpr down into the 'clang extensions' section.
Wrap line to 80 cols.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56805
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 29 Sep 2008 21:24:37 +0000 (21:24 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56804
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 29 Sep 2008 20:07:05 +0000 (20:07 +0000)]
Add a random C99 comment/reference.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56800
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 29 Sep 2008 19:17:30 +0000 (19:17 +0000)]
Extend 'IsLValType' to handle BlockPointerTypes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56797
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 29 Sep 2008 18:10:17 +0000 (18:10 +0000)]
Teach Sema::CheckAssignmentConstraints() to allow assignments between id and block pointer types (^{}).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56793
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 29 Sep 2008 16:51:41 +0000 (16:51 +0000)]
Fix <rdar://problem/
6251012 > clang: Blocks are objects too.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56791
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 29 Sep 2008 16:15:20 +0000 (16:15 +0000)]
Discard extra -isysroot options. This fixes:
<rdar://problem/
6253141 > Parser rejection occurs when command line has more than one -isysroot switch
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56790
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 29 Sep 2008 16:06:43 +0000 (16:06 +0000)]
Fix braindead bug, ID number was hardcoded.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56789
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 29 Sep 2008 14:20:56 +0000 (14:20 +0000)]
Fix <rdar://problem/
6253149 > property declaration doesn't declare getter and setter.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56785
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Mon, 29 Sep 2008 00:25:48 +0000 (00:25 +0000)]
whitespace and comment changes, to fix grammar and 80 col violations
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56776
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Sun, 28 Sep 2008 21:07:52 +0000 (21:07 +0000)]
Change a NOTE to a FIXME based on feedback from clattner.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56775
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sun, 28 Sep 2008 17:25:56 +0000 (17:25 +0000)]
Updated checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56774
91177308 -0d34-0410-b5e6-
96231b3b80d8