- Nov 24, 2010
-
-
Anders Carlsson authored
llvm-svn: 120131
-
Anders Carlsson authored
llvm-svn: 120130
-
Anders Carlsson authored
llvm-svn: 120129
-
John McCall authored
names. llvm-svn: 120091
-
John McCall authored
llvm-svn: 120089
-
John McCall authored
of the ASTs. Only available in assertions builds. No stability guarantee. This is intended solely as a debugging tool. I'm not sure if the goals are sufficiently aligned with the XML printer to allow a common implementation. Currently just falls back on the StmtDumper to display statements, which means it doesn't produce valid XML in those cases. llvm-svn: 120088
-
John McCall authored
llvm-svn: 120084
-
- Nov 23, 2010
-
-
John McCall authored
- Default argument expressions pick up the value kind of the incoming expression, not the value kind of the parameter it initializes. - When building a template argument for substitution, A::x is an rvalue if x is an instance method. - Anonymous struct/union paths pick up value kind the same way that normal member accesses do; extract out a common code path for this. Enable the value-kind assertion, now that it passes self-host. llvm-svn: 120055
-
Chris Lattner authored
FileSystemOpts through a ton of apis, simplifying a lot of code. This also fixes a latent bug in ASTUnit where it would invoke methods on FileManager without creating one in some code paths in cindextext. llvm-svn: 120010
-
- Nov 21, 2010
-
-
Benjamin Kramer authored
- Negative ChainingSize doesn't make sense, make it unsigned. llvm-svn: 119943
-
Francois Pichet authored
A new AST node is introduced: def IndirectField : DDecl<Value>; IndirectFields are injected into the anonymous's parent scope and chain back to the original field. Name lookup for anonymous entities now result in an IndirectFieldDecl instead of a FieldDecl. There is no functionality change, the code generated should be the same. llvm-svn: 119919
-
- Nov 20, 2010
-
-
Argyrios Kyrtzidis authored
and use a better and more general approach, where NullStmt has a flag to indicate whether it was preceded by an empty macro. Thanks to Abramo Bagnara for the hint! llvm-svn: 119887
-
- Nov 19, 2010
-
-
Argyrios Kyrtzidis authored
if (condition) CALL(0); // empty macro but don't warn for empty body. Fixes rdar://8436021. llvm-svn: 119838
-
Douglas Gregor authored
llvm-svn: 119817
-
- Nov 18, 2010
-
-
Argyrios Kyrtzidis authored
-Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class. -DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units. -The rest of the state in Diagnostic object is considered related and tied to one translation unit. -Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a SourceLocation instead of a FullSourceLoc. -Reflect the changes to various interfaces. llvm-svn: 119730
-
John McCall authored
out because there are still bugs left. llvm-svn: 119722
-
Craig Silverstein authored
http://llvm.org/bugs/show_bug.cgi?id=8558). This patch fixes it. Thanks to rjmccall for all the coaching! Approved by rjmccall llvm-svn: 119697
-
John McCall authored
store it on the expression node. Also store an "object kind", which distinguishes ordinary "addressed" l-values (like variable references and pointer dereferences) and bitfield, @property, and vector-component l-values. Currently we're not using these for much, but I aim to switch pretty much everything calculating l-valueness over to them. For now they shouldn't necessarily be trusted. llvm-svn: 119685
-
- Nov 17, 2010
-
-
Chris Lattner authored
no longer depends on Preprocessor, so we can move it out of Sema into a nice new StringLiteral::getLocationOfByte method that can be used by any AST client. llvm-svn: 119481
-
Douglas Gregor authored
@synthesize foo = _foo; keep track of the location of the ivar ("_foo"). Teach libclang to visit the ivar as a member reference. llvm-svn: 119447
-
Fariborz Jahanian authored
about a __block cxx object. llvm-svn: 119411
-
- Nov 16, 2010
-
-
John McCall authored
assignment to volatiles in C. This in effect reverts some of mjs's work in and around r72572. Basically, the C++ standard is quite clear, except that it lies about volatile behavior approximating C's, whereas the C standard is almost actively misleading. llvm-svn: 119344
-
Craig Silverstein authored
in more situations. In particular, for code like template<class T> void Fn() { T* x; delete x; } getDestroyedType() will now return T rather than T*, as it would before this change. On the other hand, for code like this: template<class T> void Fn() { T x; delete x; } getDestroyedType() will return an empty QualType(), since it doesn't know what the actual destroyed type would be. Previously, it would return T. OKed by rjmccall llvm-svn: 119334
-
John McCall authored
llvm-svn: 119331
-
Bob Wilson authored
llvm-svn: 119302
-
Bob Wilson authored
This is needed for Neon types when it is most natural to define them in terms of a typedef. For example, Neon poly8_t is a typedef for "signed char", and we want to define polynomial vectors as vectors of that typedef. Without this change, the result will be a generic GCC-style vector. I think this is safe for other vector types as well, but I would appreciate a review of this. llvm-svn: 119300
-
John McCall authored
certain internal type-checking procedures as well as for representing certain implicitly-generated operations. Uses to follow. llvm-svn: 119289
-
- Nov 15, 2010
-
-
Ted Kremenek authored
llvm-svn: 119181
-
John McCall authored
llvm-svn: 119138
-
- Nov 14, 2010
-
-
John McCall authored
implicit conversions; the last batch was specific to promotions. I think this is the full set we need. I do think dividing the cast kinds into floating and integral is probably a good idea. Annotate a *lot* more C casts with useful cast kinds. llvm-svn: 119036
-
- Nov 13, 2010
-
-
John McCall authored
between complex types. llvm-svn: 118994
-
John McCall authored
operands appropriately. There are a lot of missing complex-related cast kinds. llvm-svn: 118993
-
John McCall authored
llvm-svn: 118966
-
- Nov 12, 2010
-
-
Bob Wilson authored
llvm-svn: 118901
-
Douglas Gregor authored
SourceManager::getPresumedLoc(), so that we don't try to make use of an invalid presumed location. Doing so can cause crashes. llvm-svn: 118885
-
- Nov 10, 2010
-
-
Bob Wilson authored
NEON vector types need to be mangled in a special way to comply with ARM's ABI, similar to some of the AltiVec-specific vector types. This patch is mostly just renaming a bunch of "AltiVecSpecific" things, since they will no longer be specific to AltiVec. Besides that, it just adds the new "NeonVector" enum. llvm-svn: 118724
-
Argyrios Kyrtzidis authored
Fixes rdar://8649963. llvm-svn: 118674
-
- Nov 09, 2010
-
-
John McCall authored
own subcategory, -Wconstant-conversion, which is on by default. Tweak the constant folder to give better results in the invalid case of a negative shift amount. Implements rdar://problem/6792488 llvm-svn: 118636
-
Fariborz Jahanian authored
// rdar://8632525 llvm-svn: 118634
-
Charles Davis authored
mangler. Now member functions and pointers thereof have their calling convention mangled as __thiscall if they have the default CC (even though, they technically still have the __cdecl CC). llvm-svn: 118598
-