| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 69654
|
| |
|
|
| |
llvm-svn: 69652
|
| |
|
|
|
|
|
|
| |
when we need them -- which is exactly what some code was already
doing!
- No intended functionality change.
llvm-svn: 69648
|
| |
|
|
|
|
|
| |
w.r.t. ASTContext::[gs]etFieldDecl, and the Field argument to
EmitObjCValueForIvar).
llvm-svn: 69639
|
| |
|
|
|
|
| |
Test will be enabled with ObjCInterfaceDecl is added.
llvm-svn: 69594
|
| |
|
|
| |
llvm-svn: 69578
|
| |
|
|
| |
llvm-svn: 69563
|
| |
|
|
| |
llvm-svn: 69497
|
| |
|
|
|
|
|
|
|
|
| |
"Hello, World!", this takes us from deserializing 6469
statements/expressions down to deserializing 1
statement/expression. It only translated into a 1% improvement on the
Carbon-prefixed 403.gcc, but (a) it's the right thing to do, and (b)
we expect this to matter more once we lazily deserialize identifiers.
llvm-svn: 69407
|
| |
|
|
|
|
|
|
| |
lazy PCH deserialization. Propagate that argument wherever it needs to
be. No functionality change, except that I've tightened up a few PCH
tests in preparation.
llvm-svn: 69406
|
| |
|
|
|
|
|
|
|
| |
1) Accidentally used delete [] on an array of statements that was allocated with ASTContext's allocator
2) Deserialization of names with multiple declarations (e.g., a struct and a function) used the wrong mangling constant, causing it to view declaration IDs as Decl*s.
403.gcc builds and links properly.
llvm-svn: 69390
|
| |
|
|
|
|
|
| |
This completes support for all of C (+ extensions). We can (again)
build a PCH file for Carbon.h.
llvm-svn: 69385
|
| |
|
|
|
|
| |
Add a few commented lines to the test case that point out things that don't work yet.
llvm-svn: 69354
|
| |
|
|
| |
llvm-svn: 69345
|
| |
|
|
|
|
| |
compound, case, default, if, switch, and break statements.
llvm-svn: 69329
|
| |
|
|
|
|
| |
declaring a static Block 'const'.
llvm-svn: 69306
|
| |
|
|
| |
llvm-svn: 69251
|
| |
|
|
| |
llvm-svn: 69245
|
| |
|
|
| |
llvm-svn: 69244
|
| |
|
|
| |
llvm-svn: 69240
|
| |
|
|
|
|
| |
__string/__weak attributes.
llvm-svn: 69229
|
| |
|
|
| |
llvm-svn: 69186
|
| |
|
|
| |
llvm-svn: 69172
|
| |
|
|
|
|
| |
anonymous structs or unions. Fixes PR3778.
llvm-svn: 69153
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Strip off extra parens when looking for casts.
- Change the location info to point at the cast (instead of the
assignment).
For example, on
int *b;
#define a ((void*) b)
void f0() {
a = 10;
}
we now emit:
/tmp/t.c:4:3: error: assignment to cast is illegal, lvalue casts are not supported
a = 10;
^ ~
/tmp/t.c:2:12: note: instantiated from:
#define a ((void*) b)
~^~~~~~~~~~
instead of:
/tmp/t.c:4:5: error: expression is not assignable
a = 10;
~ ^
llvm-svn: 69114
|
| |
|
|
|
|
| |
extension.
llvm-svn: 69100
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
it like 'id').
This fixes <rdar://problem/6782722> XCDataTipsManager.m registers, observes notifications in class methods.
The radar above is the result of clang typing 'self' in a class method as 'Class', which results in some spurious warnings (GCC types 'self' in a class method as 'id').
I considered changing the type of 'self' to 'id' (to conform to GCC), however this resulted in *many* test cases breaking. In addition, I really prefer a more strongly typed 'self'.
All in all, this is the least obtrusive fix I could find for removing the spurious warnings (though we do loose some valid warnings).
llvm-svn: 69041
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Exposed quite a few Sema issues and a CodeGen crash.
- See FIXMEs in test case, and in SemaDecl.cpp (PR3983).
I'm skeptical that __private_extern__ should actually be a storage
class value. I think that __private_extern__ basically amounts to
extern A __attribute__((visibility("hidden")))
and would be better off handled (a) as that, or (b) with an extra bit
in the VarDecl.
llvm-svn: 69020
|
| |
|
|
|
|
| |
- No functionality change.
llvm-svn: 69019
|
| |
|
|
| |
llvm-svn: 69007
|
| |
|
|
|
|
| |
This was exposed as a result of something else that was recently fixed.
llvm-svn: 69004
|
| |
|
|
|
|
| |
by making ASTContext::isObjCObjectPointerType accept typedefs of id.
llvm-svn: 68931
|
| |
|
|
|
|
| |
the attribute set on them.
llvm-svn: 68844
|
| |
|
|
|
|
|
| |
cleanup. Aside from a minor tweak to the PCH file format, no
functionality change.
llvm-svn: 68793
|
| |
|
|
| |
llvm-svn: 68769
|
| |
|
|
|
|
| |
Expr as an LValue.
llvm-svn: 68763
|
| |
|
|
| |
llvm-svn: 68762
|
| |
|
|
| |
llvm-svn: 68761
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
de-serialization of abstract syntax trees.
PCH support serializes the contents of the abstract syntax tree (AST)
to a bitstream. When the PCH file is read, declarations are serialized
as-needed. For example, a declaration of a variable "x" will be
deserialized only when its VarDecl can be found by a client, e.g.,
based on name lookup for "x" or traversing the entire contents of the
owner of "x".
This commit provides the framework for serialization and (lazy)
deserialization, along with support for variable and typedef
declarations (along with several kinds of types). More
declarations/types, along with important auxiliary structures (source
manager, preprocessor, etc.), will follow.
llvm-svn: 68732
|
| |
|
|
| |
llvm-svn: 68729
|
| |
|
|
|
|
| |
No functionality change (really).
llvm-svn: 68726
|
| |
|
|
|
|
|
|
| |
StoredDeclsMap, instead of using the it's-an-array-or-its-a-map
trick. I'll verify that performance isn't impacted later; for now, I
need the common representation.
llvm-svn: 68715
|
| |
|
|
| |
llvm-svn: 68680
|
| |
|
|
| |
llvm-svn: 68646
|
| |
|
|
| |
llvm-svn: 68634
|
| |
|
|
|
|
|
| |
value of its subexpressions unless it is a comma (in which case it doesn't
consume the left subexpression).
llvm-svn: 68628
|
| |
|
|
| |
llvm-svn: 68586
|
| |
|
|
| |
llvm-svn: 68548
|
| |
|
|
| |
llvm-svn: 68533
|
| |
|
|
|
|
|
|
| |
Simplify the addition of a case statement to a switch.
Fix -print-stats for attribute-qualified types.
llvm-svn: 68522
|