- May 13, 2011
-
-
Douglas Gregor authored
constant, also consider whether it's a class type that has any mutable fields. If so, it can't be a global constant. llvm-svn: 131276
-
Douglas Gregor authored
template parameter lists to scope specifiers for friend declarations about injected class name types. Fixes the g++.dg/template/memfriend5.C regression in the GCC testsuite. llvm-svn: 131272
-
Alexis Hunt authored
llvm-svn: 131270
-
Bill Wendling authored
correct unaligned load. llvm-svn: 131268
-
Alexis Hunt authored
llvm-svn: 131260
-
Alexis Hunt authored
llvm-svn: 131259
-
Fariborz Jahanian authored
don't build circular AST in protocol's protocol list when user code has introduced it. Indexer and other clients may crash. // rdar://9221614 llvm-svn: 131254
-
- May 12, 2011
-
-
Devang Patel authored
s/DW_AT_APPLE_objc_class_extension/DW_AT_APPLE_objc_complete_type/g llvm-svn: 131245
-
Devang Patel authored
llvm-svn: 131242
-
Howard Hinnant authored
llvm-svn: 131240
-
Devang Patel authored
Use DW_AT_APPLE_objc_class_extension attribute to identify interfaces that represent class extension. Radar 9423077. llvm-svn: 131239
-
Bill Wendling authored
(__m128){ p[0], p[1], p[2], p[3] } which produces really bad code. This could be done in instcombine, but it's probably better to do it in the front-end instead. <rdar://problem/9424836> llvm-svn: 131237
-
Alexis Hunt authored
They are actually grammatically considered definitions and parsed accordingly. This fixes the outstanding bugs regarding defaulting functions after their declarations. We now really nicely diagnose the following construct (try it!) int foo() = delete, bar; Still todo: Defaulted functions other than default constructors Test cases (including for the above construct) llvm-svn: 131228
-
Alexis Hunt authored
defaulted default constructors. As it happens, making sure that we handle out-of-line defaulted functions properly will involved making sure that we actually parse them correctly, so that's coming after. llvm-svn: 131224
-
Alexis Hunt authored
We still don't parse out-of-line defaults correctly, which is needed to get the full effect out of this patch. llvm-svn: 131223
-
Nick Lewycky authored
llvm-svn: 131222
-
Eli Friedman authored
llvm-svn: 131220
-
John McCall authored
llvm-svn: 131215
-
Nick Lewycky authored
llvm-svn: 131212
-
Richard Smith authored
Fix PR9902: correctly substitute alias templates within the template in which they are defined: provide an empty list of arguments for each containing template context during substitution. llvm-svn: 131211
-
Douglas Gregor authored
argument deduction failures. Only implemented in C++0x, since this is a significant change in behavior from C++98/03. llvm-svn: 131209
-
Douglas Gregor authored
nested of an out-of-line declaration, only require a 'template<>' header for each enclosing class template that hasn't been previously specialized; previously, we were requiring 'template<>' for enclosing class templates and members of class templates that hadn't been previously specialized. Fixes <rdar://problem/9422013>. llvm-svn: 131207
-
Alexis Hunt authored
This means we get C++0x jump-across-intializer semantics correct. llvm-svn: 131204
-
Alexis Hunt authored
Yes, I'm aware that the diagnostics are awful. Tests to follow. llvm-svn: 131203
-
Francois Pichet authored
In Microsoft mode, allow conversion from pointer to integral type no matter what size the integral type is. Necessary to parse MFC code. Example: void f(char *ptr) { char var = (char)ptr; } llvm-svn: 131201
-
- May 11, 2011
-
-
Fariborz Jahanian authored
Concludes // radar://8823265. llvm-svn: 131188
-
John McCall authored
then teach -Wreturn-type to handle the same. Net effect: we now correctly handle noreturn attributes on member calls in the CFG. llvm-svn: 131178
-
Eli Friedman authored
dynamic_cast correctly. llvm-svn: 131177
-
Francois Pichet authored
This removes 2 errors when parsing MFC code with clang Example: class A { virtual void f() = 0 { } } llvm-svn: 131175
-
John McCall authored
llvm-svn: 131170
-
Ted Kremenek authored
llvm-svn: 131158
-
- May 10, 2011
-
-
Alexis Hunt authored
I've edited one diagnostic which would print "copy constructor" for copy constructors and "constructor" for any other constructor. If anyone is extremely enamored with this, it can be reinstated with a simple boolean flag rather than calling getSpecialMember, which is inappropriate. llvm-svn: 131143
-
-
Ted Kremenek authored
Elide __label__ declarations from the CFG. This resolves a crash in CFGRecStmtDeclVisitor (crash in static analyzer). llvm-svn: 131141
-
Douglas Gregor authored
the semantic context referenced by the nested-name-specifier rather than the syntactic form of the nested-name-specifier. The previous incarnation was based on my complete misunderstanding of C++ [temp.expl.spec]. The latest C++0x working draft clarifies the requirements here, and this rewrite is intended to follow that. Along the way, improve source location information in the diagnostics. For example, if we report that a specific type needs or doesn't need a 'template<>' header, we dig out that type in the nested-name-specifier and highlight its range. Fixes: PR5907, PR9421, PR8277, PR8708, PR9482, PR9668, PR9877, and <rdar://problem/9135379>. llvm-svn: 131138
-
Eli Friedman authored
llvm-svn: 131132
-
Rafael Espindola authored
llvm-svn: 131126
-
Alexis Hunt authored
Focus is on default constructors for the time being. Currently the exception specification and prototype are processed correctly. Codegen might work but in all likelihood doesn't. Note that due to an error, out-of-line defaulting of member functions is currently impossible. It will continue to that until I muster up the courage to admit that I secretly pray to epimetheus and that I need to rework the way default gets from Parse -> Sema. llvm-svn: 131115
-
Alexis Hunt authored
reflect our new, more accurate AST. llvm-svn: 131114
-
Douglas Gregor authored
unions. Fixes PR8326. llvm-svn: 131109
-