- Feb 19, 2009
-
-
Anders Carlsson authored
llvm-svn: 65013
-
Mike Stump authored
The size calculation is improved. llvm-svn: 64994
-
- Feb 18, 2009
-
-
Chris Lattner authored
llvm-svn: 64972
-
Chris Lattner authored
and gc attrs. Add an assert to check that we never get ExtQualType(ExtQualType(T)). llvm-svn: 64970
-
Chris Lattner authored
llvm-svn: 64961
-
Fariborz Jahanian authored
ir gen. llvm-svn: 64954
-
Mike Stump authored
llvm-svn: 64951
-
Daniel Dunbar authored
llvm-svn: 64946
-
Chris Lattner authored
so it shows up in -ast-dump. llvm-svn: 64901
-
Chris Lattner authored
stuff behind a private static function. llvm-svn: 64898
-
Chris Lattner authored
the various PPTokens that are pasted together to make it. In the course of working on this, I discovered ParseObjCStringLiteral which needs some work. I'll tackle it next. llvm-svn: 64892
-
Fariborz Jahanian authored
Note that one test attr-objc-gc.m fails. I will fix this after removing these attributes from the Decl nodes. llvm-svn: 64889
-
Daniel Dunbar authored
Add assert to isICE that, on success, result must be the same as EvaluateAsInt()... this enforces a minimum level of sanity. llvm-svn: 64865
-
Daniel Dunbar authored
- This idiom ensures that the result will have the right width and type. - Tested on most of x86_64/llvm-test to satisfy my paranoia. - This fixes at least the following bugs: o UnaryTypeTraitExpr wasn't setting the width correctly. o Arithmetic on _Bool wasn't setting the width correctly. And probably a number more. llvm-svn: 64864
-
Daniel Dunbar authored
with Expr::Evaluate(). llvm-svn: 64850
-
Douglas Gregor authored
specialization of class templates, e.g., template<typename T> class X; template<> class X<int> { /* blah */ }; Each specialization is a different *Decl node (naturally), and can have different members. We keep track of forward declarations and definitions as for other class/struct/union types. This is only the basic framework: we still have to deal with checking the template headers properly, improving recovery when there are failures, handling nested name specifiers, etc. llvm-svn: 64848
-
- Feb 17, 2009
-
-
Daniel Dunbar authored
- Renamed to getDeclAlignInBytes since most other query functions work in bits. - Fun to track down as isIntegerConstantExpr was getting it right, but Evaluate() was getting it wrong. Maybe we should assert they compute the same thing when they succeed? llvm-svn: 64828
-
Fariborz Jahanian authored
llvm-svn: 64820
-
Argyrios Kyrtzidis authored
llvm-svn: 64806
-
Argyrios Kyrtzidis authored
llvm-svn: 64805
-
Argyrios Kyrtzidis authored
Pass the DeclContext to ObjCIvarDecls as well. llvm-svn: 64801
-
Fariborz Jahanian authored
llvm-svn: 64800
-
Fariborz Jahanian authored
general use; as for, objc2's gc type attributes. No change in functionality. llvm-svn: 64778
-
Douglas Gregor authored
functions, so if we're declaring a static we should implicitly declare a library function by the same name (e.g., malloc, strdup). Fixes PR3592. llvm-svn: 64736
-
Douglas Gregor authored
CXXRecordDecl that is used to represent class template specializations. These are canonical declarations that can refer to either an actual class template specialization in the code, e.g., template<> class vector<bool> { }; or to a template instantiation. However, neither of these features is actually implemented yet, so really we're just using (and uniqing) the declarations to make sure that, e.g., A<int> is a different type from A<float>. Note that we carefully distinguish between what the user wrote in the source code (e.g., "A<FLOAT>") and the semantic entity it represents (e.g., "A<float, int>"); the former is in the sugared Type, the latter is an actual Decl. llvm-svn: 64716
-
- Feb 16, 2009
-
-
Daniel Dunbar authored
Doug: please verify that it is expected that LastIdx can be less that NumInits. And perhaps add a comment so that Chris doesn't break your code. :) llvm-svn: 64688
-
Chris Lattner authored
llvm-svn: 64684
-
Chris Lattner authored
llvm-svn: 64681
-
Fariborz Jahanian authored
llvm-svn: 64680
-
Douglas Gregor authored
llvm-svn: 64676
-
Fariborz Jahanian authored
llvm-svn: 64672
-
Fariborz Jahanian authored
the same. llvm-svn: 64657
-
Chris Lattner authored
llvm-svn: 64650
-
Argyrios Kyrtzidis authored
DeclContext had its "casting machinery" inside the class definition so that if a new declaration context Decl appeared, the necessary changes would be in one place. Since, now, only DeclNodes.def needs to be modified, move things out-of-line and simplify the DeclContext class. llvm-svn: 64630
-
Argyrios Kyrtzidis authored
-In DeclNodes.def, only mark as DeclContexts the top classes that directly derive from DeclContext. If the Decl has subclasses, it should be marked with DECL_CONTEXT_BASE. -Use DeclNodes.def to automate the DeclContext::classof and DeclContext::CastTo definitions. llvm-svn: 64629
-
- Feb 15, 2009
-
-
Chris Lattner authored
llvm-svn: 64605
-
Daniel Dunbar authored
llvm-svn: 64595
-
- Feb 14, 2009
-
-
Douglas Gregor authored
Add -ffreestanding to suppress the implicit declaration of library builtins like printf and malloc. Fixes PR3586 llvm-svn: 64566
-
Fariborz Jahanian authored
which consequently caused a Seg fault. during meta-data generation. It also addresses an issue related to late binding of newly synthesize ivars (when we support it). llvm-svn: 64563
-
Douglas Gregor authored
about, whether they are builtins or not. Use this to add the appropriate "format" attribute to NSLog, NSLogv, asprintf, and vasprintf, and to translate builtin attributes (from Builtins.def) into actual attributes on the function declaration. Use the "printf" format attribute on function declarations to determine whether we should do format string checking, rather than looking at an ad hoc list of builtins and "known" function names. Be a bit more careful about when we consider a function a "builtin" in C++. llvm-svn: 64561
-