- Nov 07, 2008
-
-
Zhongxing Xu authored
available, things get much simplified. One addition is that CompoundLiteralExpr can appear both in rvalue and lvalue context. llvm-svn: 58837
-
Zhongxing Xu authored
llvm-svn: 58833
-
Ted Kremenek authored
llvm-svn: 58831
-
Douglas Gregor authored
operators. For example, one can now write "x + y" where x or y is a class or enumeration type, and Clang will perform overload resolution for "+" based on the overloaded operators it finds. The other kinds of overloadable operators in C++ will follow this same approach. Three major issues remain: 1) We don't find member operators 2) Since we don't have user-defined conversion operators, we can't call any of the built-in overloaded operators in C++ [over.built]. 3) Once we've done the semantic checks, we drop the overloaded operator on the floor; it doesn't get into the AST at all. llvm-svn: 58821
-
- Nov 06, 2008
-
-
Douglas Gregor authored
operators in C++. Overloaded operators can be called directly via their operator-function-ids, e.g., "operator+(foo, bar)", but we don't yet implement the semantics of operator overloading to handle, e.g., "foo + bar". llvm-svn: 58817
-
Douglas Gregor authored
llvm-svn: 58806
-
Sebastian Redl authored
llvm-svn: 58804
-
Douglas Gregor authored
llvm-svn: 58802
-
Steve Naroff authored
llvm-svn: 58797
-
Zhongxing Xu authored
llvm-svn: 58795
-
- Nov 05, 2008
-
-
Ted Kremenek authored
llvm-svn: 58776
-
Ted Kremenek authored
llvm-svn: 58772
-
Ted Kremenek authored
llvm-svn: 58771
-
Sebastian Redl authored
llvm-svn: 58770
-
Sebastian Redl authored
llvm-svn: 58769
-
Douglas Gregor authored
Implicit declaration of destructors (when necessary). Extended Declarator to store information about parsed constructors and destructors; this will be extended to deal with declarators that name overloaded operators (e.g., "operator +") and user-defined conversion operators (e.g., "operator int"). llvm-svn: 58767
-
Ted Kremenek authored
llvm-svn: 58766
-
Sebastian Redl authored
llvm-svn: 58762
-
Ted Kremenek authored
llvm-svn: 58758
-
Douglas Gregor authored
Keep track of whether a C++ class is an aggregate. Don't allow initialization of non-aggregates with initializer lists. llvm-svn: 58757
-
Douglas Gregor authored
duplication in the handling of copy-initialization by constructor, which occurs both for initialization of a declaration and for overloading. The initialization code is due for some refactoring. llvm-svn: 58756
-
Douglas Gregor authored
for constructor initializations, e.g., class A { }; class B : public A { int m; public: B() : A(), m(17) { }; }; llvm-svn: 58749
-
- Nov 04, 2008
-
-
Cedric Venet authored
llvm-svn: 58716
-
Daniel Dunbar authored
llvm-svn: 58713
-
Ted Kremenek authored
llvm-svn: 58711
-
Anders Carlsson authored
llvm-svn: 58705
-
Chris Lattner authored
llvm-svn: 58704
-
Sebastian Redl authored
Some cleanup of the cast checkers. Don't canonicalize types when not needed. Use distinct diagnostics for distinct errors. llvm-svn: 58700
-
Douglas Gregor authored
llvm-svn: 58699
-
Douglas Gregor authored
Add a new expression class, ObjCSuperExpr, to handle the Objective-C 'super'. Remove ObjCThis from PredefinedExpr llvm-svn: 58698
-
Douglas Gregor authored
Create a new expression class, CXXThisExpr, to handle the C++ 'this' primary expression. Remove CXXThis from PredefinedExpr llvm-svn: 58695
-
Douglas Gregor authored
llvm-svn: 58692
-
Douglas Gregor authored
Diagnose use of 'this' in a C++ default argument. Thanks to Eli for correcting my bogus assertion about it already being handled llvm-svn: 58691
-
Sebastian Redl authored
llvm-svn: 58689
-
Anders Carlsson authored
llvm-svn: 58685
-
Anders Carlsson authored
llvm-svn: 58681
-
Anders Carlsson authored
llvm-svn: 58680
-
Ted Kremenek authored
llvm-svn: 58672
-
Ted Kremenek authored
llvm-svn: 58666
-
Ted Kremenek authored
llvm-svn: 58663
-