- Mar 07, 2011
-
-
Douglas Gregor authored
of a C++0x inline namespace within enclosing namespaces, as noted in C++0x [namespace.def]p8. Fixes <rdar://problem/9006349>, a libc++ failure where Clang was rejected an explicit specialization of std::swap (since libc++ puts it into an inline, versioned namespace std::__1). llvm-svn: 127162
-
Douglas Gregor authored
dependent template specialization type, make sure to set the keyword location. Fixes some valgrind issues introduced in r127150. llvm-svn: 127159
-
John McCall authored
trivial to check this. Adjust for style. llvm-svn: 127151
-
Douglas Gregor authored
to set the source-location information for the template arguments to the *transformed* source-location information, not the original source-location information. Fixes <rdar://problem/8986308> (a libc++ SFINAE issue) and the Boost.Polygon failure. llvm-svn: 127150
-
Douglas Gregor authored
llvm-svn: 127148
-
John McCall authored
allocation and therefore requires a null-check. We were doing that, but we weren't treating the new-initializer as being conditionally executed, which means it was possible to get ill-formed IR as in PR9298. llvm-svn: 127147
-
Anders Carlsson authored
llvm-svn: 127144
-
Joerg Sonnenberger authored
Pass down the correct C->getArgs, but keep it with the original DerivedArgList type. Slightly adjust the MakeIndex call for the different base type. This unbreaks the handling of --no-mangle on Darwin. llvm-svn: 127142
-
Douglas Gregor authored
too low-level to actually be useful but is just interesting enough for people to try to use it (which won't actually work beyond toy examples). To bring back the AST printer, it needs to be: - Complete, covering all of C/C++/Objective-C - Documented, with appropriate Schema against which we can validate the output - Designed for C/C++/Objective-C, not Clang's specific ASTs - Stable across Clang versions - Well-tested llvm-svn: 127141
-
Joerg Sonnenberger authored
llvm-svn: 127139
-
Joerg Sonnenberger authored
input is specified, use stdin implicitly. Based on a patch from Roman Divacky. llvm-svn: 127137
-
Douglas Gregor authored
corner cases like the one in PR9301." which caused PR9416. llvm-svn: 127136
-
- Mar 06, 2011
-
-
Abramo Bagnara authored
llvm-svn: 127134
-
Anders Carlsson authored
llvm-svn: 127133
-
Abramo Bagnara authored
llvm-svn: 127132
-
Douglas Gregor authored
declaration because of interesting ordering dependencies while instantiating a class template or member class thereof. Complain, rather than asserting (+Asserts) or silently rejecting the code (-Asserts). Fixes the crash-on-invalid in PR8965. llvm-svn: 127129
-
Douglas Gregor authored
llvm-svn: 127128
-
Anders Carlsson authored
llvm-svn: 127126
-
Anders Carlsson authored
arguments at the same offset, since it's needed when creating the empty DeclRefExpr when deserializing. Fixes a memory corruption issue that would lead to random bugs and crashes. llvm-svn: 127125
-
Douglas Gregor authored
llvm-svn: 127124
-
Douglas Gregor authored
Fix copy-and-paste typo in the transformation of Microsoft __uuidof expressions, from Eric Niebler via John Wiegley llvm-svn: 127123
-
Anders Carlsson authored
llvm-svn: 127121
-
Abramo Bagnara authored
llvm-svn: 127120
-
Abramo Bagnara authored
llvm-svn: 127119
-
Sebastian Redl authored
Reinstate r127112, "Propagate new-style exception spec information to ExtProtoInfo.", this time with the missing header. llvm-svn: 127118
-
Douglas Gregor authored
conversion function when we're binding the result to a reference, drop cv-qualifiers on the type we're referring to, since we should be deducing a type that can be adjusted (via cv-qualification) to the requested type. Fixes PR9336, and the remaining Boost.Assign failure. llvm-svn: 127117
-
NAKAMURA Takumi authored
It seems missing "clang/Basic/ExceptionSpecificationType.h". llvm-svn: 127115
-
- Mar 05, 2011
-
-
Sebastian Redl authored
llvm-svn: 127112
-
Sebastian Redl authored
llvm-svn: 127111
-
Douglas Gregor authored
template name as the result of substitution. The qualifier is handled separately by the tree transformer, so we would end up in an inconsistent state. This is actually the last bit of PR9016, and possibly also fixes PR8965. It takes Boost.Icl from "epic fail" down to a single failure. llvm-svn: 127108
-
Abramo Bagnara authored
llvm-svn: 127094
-
Douglas Gregor authored
template (not a specialization!), use the "injected" function template arguments, which correspond to the template parameters of the function template. This is required when substituting into the default template parameters of template template parameters within a function template. Fixes PR9016. llvm-svn: 127092
-
Douglas Gregor authored
transform the type that replaces the template type parameter. In the vast majority of cases, there's nothing to do, because most template type parameters are replaced with something non-dependent that doesn't need further transformation. However, when we're dealing with the default template arguments of template template parameters, we might end up replacing a template parameter (of the template template parameter) with a template parameter of the enclosing template. This addresses part of PR9016, but not within function templates. That's a separate issue. llvm-svn: 127091
-
Anton Korobeynikov authored
that at cc1 level we will always have normalized triple and thus can provide necessary default based on e.g. environment value (e.g. for "arm-eabi" triple, etc.) llvm-svn: 127087
-
Sebastian Redl authored
llvm-svn: 127086
-
Abramo Bagnara authored
llvm-svn: 127085
-
Benjamin Kramer authored
llvm-svn: 127082
-
Matt Beaumont-Gay authored
llvm-svn: 127061
-
Douglas Gregor authored
use the translation unit as its declaration context, then deserialize the actual lexical and semantic DeclContexts after the template parameter is complete. This avoids problems when the DeclContext itself (e.g., a class template) is dependent on the template parameter (e.g., for the injected-class-name). llvm-svn: 127056
-
Argyrios Kyrtzidis authored
Currently we can only remap a file by creating a MemoryBuffer and replacing the file contents with it. Allow remapping a file by specifying another filename whose contents should be loaded if the original file gets loaded. This allows to override files without having to create & load buffers in advance. llvm-svn: 127052
-