- Dec 21, 2008
-
-
Douglas Gregor authored
which can refer to static data members, enumerators, and member functions as well as to non-static data members. Implement correct lvalue computation for member references in C++. Compute the result type of non-static data members of reference type properly. llvm-svn: 61294
-
Eli Friedman authored
warning by using an unsigned index. llvm-svn: 61292
-
Eli Friedman authored
simple test that actually does VLA codegen. Note that despite the fact that the alloca isn't in the entry block, it should dominate all uses; this is guaranteed by the restrictions on goto into VLA scope in C99. llvm-svn: 61291
-
- Dec 20, 2008
-
-
Anders Carlsson authored
llvm-svn: 61290
-
Anders Carlsson authored
Check the entire StackSaveValues stack for VLAs when dealing with goto and return statements. Noticed by Eli Friedman. llvm-svn: 61289
-
Anders Carlsson authored
llvm-svn: 61288
-
Anders Carlsson authored
Emit the size even if the declared type is a variably modified type. This lets us handle void f(int n) { int (*a)[n]; printf("size: %d\n", sizeof(*a)); } llvm-svn: 61285
-
Anders Carlsson authored
llvm-svn: 61284
-
Anders Carlsson authored
llvm-svn: 61283
-
Fariborz Jahanian authored
@encode of classes and bitfields. llvm-svn: 61268
-
- Dec 18, 2008
-
-
Fariborz Jahanian authored
code gen which did not belong there. llvm-svn: 61203
-
Daniel Dunbar authored
- Update comment to reflect fact that StructRet is now supported for any type (modulo LLVM support). - No functionality change, no scalar types currently use this feature. llvm-svn: 61192
-
- Dec 17, 2008
-
-
Fariborz Jahanian authored
Note that one test duplicate-ivar-check.m will fail because I need to re-implement duplicate ivar checking. llvm-svn: 61154
-
- Dec 16, 2008
-
-
Eli Friedman authored
Someone should double-check that I didn't somehow break ObjC serialization; I think the change there actually changes the semantics. llvm-svn: 61098
-
Nate Begeman authored
llvm-svn: 61097
-
- Dec 15, 2008
-
-
Fariborz Jahanian authored
is done. Layout is calculated lazily at code gen type. This patch changes the name. llvm-svn: 61054
-
Fariborz Jahanian authored
ivars. llvm-svn: 61043
-
- Dec 13, 2008
-
-
Anders Carlsson authored
Store the size of the EH stack inside each BreakContinue struct so we know when a break/continue won't cross a try block. llvm-svn: 60998
-
Fariborz Jahanian authored
matching the storage layout for this ivar llvm-svn: 60996
-
Chris Lattner authored
llvm-svn: 60989
-
- Dec 12, 2008
-
-
Anders Carlsson authored
llvm-svn: 60943
-
Anders Carlsson authored
llvm-svn: 60939
-
Anders Carlsson authored
Work in preparation for VLAs. Make sure to restore the stack if necessary (Saving the stack isn't implemented right now :) llvm-svn: 60925
-
-
Chris Lattner authored
output that GCC does. rdar://6440297 llvm-svn: 60922
-
- Dec 11, 2008
-
-
Douglas Gregor authored
llvm-svn: 60897
-
Douglas Gregor authored
Actually distinguish between RecordDecl::field_iterator and RecordDecl::field_const_iterator, propagating the constness down to the FieldDecls. llvm-svn: 60883
-
Douglas Gregor authored
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
-
- Dec 10, 2008
-
-
Anders Carlsson authored
llvm-svn: 60827
-
- Dec 09, 2008
-
-
Fariborz Jahanian authored
the synthesis is in an implementation of s subclass of a super class where the property has been declared. llvm-svn: 60792
-
Chris Lattner authored
llvm-svn: 60778
-
Fariborz Jahanian authored
llvm-svn: 60729
-
- Dec 06, 2008
-
-
Douglas Gregor authored
expressions, and value-dependent expressions. This permits us to parse some template definitions. This is not a complete solution; we're missing type- and value-dependent computations for most of the expression types, and we're missing checks for dependent types and type-dependent expressions throughout Sema. llvm-svn: 60615
-
- Dec 05, 2008
-
-
Douglas Gregor authored
parameters, with some semantic analysis: - Template parameters are introduced into template parameter scope - Complain about template parameter shadowing (except in Microsoft mode) Note that we leak template parameter declarations like crazy, a problem we'll remedy once we actually create proper declarations for templates. Next up: dependent types and value-dependent/type-dependent expressions. llvm-svn: 60597
-
- Dec 04, 2008
-
-
Daniel Dunbar authored
llvm-svn: 60535
-
Sebastian Redl authored
Correct CodeGen assumption that LongTy == Int32Ty in a few places. This makes several CodeGenObjC tests pass on 64-bit by fixing assertions. This doesn't mean that the result is actually what the GNU runtime expects, though. llvm-svn: 60515
-
- Dec 03, 2008
-
-
Anders Carlsson authored
llvm-svn: 60462
-
- Dec 02, 2008
-
-
Eli Friedman authored
ScalarExprEmitter::VisitBinLOr. llvm-svn: 60415
-
Eli Friedman authored
PR3152. llvm-svn: 60389
-
- Dec 01, 2008
-
-
Anders Carlsson authored
llvm-svn: 60324
-