| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 60888
|
| |
|
|
|
|
| |
RecordDecl::field_const_iterator, propagating the constness down to the FieldDecls.
llvm-svn: 60883
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and separates lexical name lookup from qualified name lookup. In
particular:
* Make DeclContext the central data structure for storing and
looking up declarations within existing declarations, e.g., members
of structs/unions/classes, enumerators in C++0x enums, members of
C++ namespaces, and (later) members of Objective-C
interfaces/implementations. DeclContext uses a lazily-constructed
data structure optimized for fast lookup (array for small contexts,
hash table for larger contexts).
* Implement C++ qualified name lookup in terms of lookup into
DeclContext.
* Implement C++ unqualified name lookup in terms of
qualified+unqualified name lookup (since unqualified lookup is not
purely lexical in C++!)
* Limit the use of the chains of declarations stored in
IdentifierInfo to those names declared lexically.
* Eliminate CXXFieldDecl, collapsing its behavior into
FieldDecl. (FieldDecl is now a ScopedDecl).
* Make RecordDecl into a DeclContext and eliminates its
Members/NumMembers fields (since one can just iterate through the
DeclContext to get the fields).
llvm-svn: 60878
|
| |
|
|
| |
llvm-svn: 60870
|
| |
|
|
|
|
| |
to them.
llvm-svn: 60868
|
| |
|
|
|
|
| |
integer) correctly, to (complex floating point + complex floating point)
llvm-svn: 60862
|
| |
|
|
|
|
|
|
| |
- Added virtual method 'getSourceLocation()' (no arguments) that gets the location of the next "observable" location (e.g., next character, next token).
PPLexerChange.cpp:
- Implemented FIXME by using PreprocessorLexer::getSourceLocation() to get the location in the file we are returning to after lexing a #included file. This appears to be slightly faster than having the branch (i.e., 'if(CurLexer)'). It's also not a really hot part of the Preprocessor.
llvm-svn: 60860
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"else" clause, e.g.,
if (int X = foo()) {
} else {
if (X) { // warning: X is always zero in this context
}
}
Fixes rdar://6425550 and lets me think about something other than
DeclContext.
llvm-svn: 60858
|
| |
|
|
|
|
|
|
| |
failed: (0 && "unexpected type"), function mergeTypes,
Commit r60845 was premature.
llvm-svn: 60852
|
| |
|
|
|
|
| |
vars
llvm-svn: 60849
|
| |
|
|
| |
llvm-svn: 60848
|
| |
|
|
|
|
| |
"unexpected type"), function mergeTypes,
llvm-svn: 60845
|
| |
|
|
|
|
| |
cleaner. No performance change.
llvm-svn: 60843
|
| |
|
|
| |
llvm-svn: 60842
|
| |
|
|
|
|
| |
explicitly calling EnterScope/ExitScope
llvm-svn: 60830
|
| |
|
|
| |
llvm-svn: 60827
|
| |
|
|
| |
llvm-svn: 60816
|
| |
|
|
|
|
| |
Hinnant. Makes for much nicer syntax when smart pointers are used consistently. Also, start converting internal argument passing of Parser to smart pointers.
llvm-svn: 60809
|
| |
|
|
|
|
| |
layer an AnonTypedRegion on top of it.
llvm-svn: 60808
|
| |
|
|
|
|
| |
has added declaration of these methods in its @interface.
llvm-svn: 60803
|
| |
|
|
|
|
| |
BasicStoreManager::getLValueField() (i.e., don't just return the 'base' as the SVal)
llvm-svn: 60795
|
| |
|
|
|
|
|
| |
the synthesis is in an implementation of s subclass of
a super class where the property has been declared.
llvm-svn: 60792
|
| |
|
|
| |
llvm-svn: 60791
|
| |
|
|
|
|
| |
statement.
llvm-svn: 60790
|
| |
|
|
|
|
| |
is a temporary solution.
llvm-svn: 60789
|
| |
|
|
|
|
| |
pointers.
llvm-svn: 60782
|
| |
|
|
|
|
|
|
|
| |
function/array conversion for parameter types.
This fixes <rdar://problem/6424064> checker on xcode: (possible bad AST) can the type of a method parameter really have "isFunctionType() == true"?
and http://llvm.org/bugs/show_bug.cgi?id=2997.
llvm-svn: 60781
|
| |
|
|
| |
llvm-svn: 60778
|
| |
|
|
|
|
| |
variables.
llvm-svn: 60761
|
| |
|
|
| |
llvm-svn: 60758
|
| |
|
|
| |
llvm-svn: 60734
|
| |
|
|
|
|
| |
that functioned as the size of a VLA to be live.
llvm-svn: 60730
|
| |
|
|
| |
llvm-svn: 60729
|
| |
|
|
| |
llvm-svn: 60726
|
| |
|
|
|
|
|
| |
This is important because ParseDeclarationOrFunctionDefinition
skips to, but does not consume, an } on error.
llvm-svn: 60719
|
| |
|
|
| |
llvm-svn: 60718
|
| |
|
|
|
|
| |
kind 'assign'. This fixes <rdar://problem/6380411>.
llvm-svn: 60717
|
| |
|
|
|
|
|
|
| |
protocols.
Fixes <rdar://problem/6418640> clang on prokit: error: incompatible type returning 'id', expected 'NSSize'
llvm-svn: 60716
|
| |
|
|
|
|
| |
warning as it is allowed in gcc and will break projects.
llvm-svn: 60710
|
| |
|
|
|
|
|
| |
must allow the continuation class to extend it to a 'readwrite'
and 'copy/retain'.
llvm-svn: 60709
|
| |
|
|
|
|
| |
belongs
llvm-svn: 60708
|
| |
|
|
| |
llvm-svn: 60693
|
| |
|
|
| |
llvm-svn: 60686
|
| |
|
|
|
|
|
|
|
| |
code were working correctly, it would be a no-op, but it's not really a
proper fix. That said, I don't really want to touch the enum code at
the moment because I don't understand it very well, and this seems to
be a relatively visible regression.
llvm-svn: 60680
|
| |
|
|
| |
llvm-svn: 60655
|
| |
|
|
| |
llvm-svn: 60645
|
| |
|
|
| |
llvm-svn: 60638
|
| |
|
|
|
|
| |
Bug reported by Chris L.
llvm-svn: 60635
|
| |
|
|
|
|
|
| |
via the category's protocol list1s, with appropriate
diagnsostics and a test case.
llvm-svn: 60634
|
| |
|
|
|
|
| |
type mimatches.
llvm-svn: 60630
|