- Apr 25, 2011
-
-
Duncan Sands authored
llvm-svn: 130120
-
Nico Weber authored
llvm-svn: 130119
-
Eli Friedman authored
llvm-svn: 130118
-
Eli Friedman authored
llvm-svn: 130117
-
- Apr 24, 2011
-
-
Rafael Espindola authored
llvm-svn: 130116
-
Rafael Espindola authored
Fixes PR9787. llvm-svn: 130115
-
Benjamin Kramer authored
No intended functionality change. llvm-svn: 130114
-
Ken Dyck authored
change in functionality intended. llvm-svn: 130113
-
Ken Dyck authored
No change in functionality intended. llvm-svn: 130112
-
Ken Dyck authored
change in functionality intended. llvm-svn: 130111
-
Ken Dyck authored
EmitFinalDestCopy() to CharUnits. No change in functionality intended. llvm-svn: 130110
-
Ken Dyck authored
ASTContext::getTypeSize() when only the size part is used. No change in functionality intended. llvm-svn: 130109
-
Ken Dyck authored
change in functionality intended. llvm-svn: 130108
-
Ken Dyck authored
CharUnits. No change in functionality intended. llvm-svn: 130107
-
Ken Dyck authored
CharUnits or replacing the 8s with char align. No change in functionality intended. llvm-svn: 130106
-
Sebastian Redl authored
Set the correct anonymous namespace (must be last reopening), and behave correctly in the presence of the ever-annoying linkage specifications. llvm-svn: 130105
-
Sebastian Redl authored
Fix anonymous namespaces in PCH. llvm-svn: 130104
-
Sebastian Redl authored
Synthesizing the definition of an implicit member is an AST modification, so notify any mutation listeners of it. This fixes a crasher in chained PCH, where an implicit destructor in a PCH gets a definition in a chained PCH, which is then lost. However, any further use of the destructor would cause its definition to be regenerated in the final file, hiding the bug. llvm-svn: 130103
-
Sebastian Redl authored
On reading DeclContexts from PCH, check for visible updates even if the context was empty in the original version. Also, if there are any, tell the context that it has external visible decls. This fixes the problem that a namespace that was empty in the initial PCH (could also happen if the initial PCH didn't include any std header but caused implicit creation of namespace std, e.g. due to implicit declaration of a virtual destructor) never found any declaration declared in *any* chained PCH. Very ugly when the chained PCH includes all that std stuff, as the errors were effectively the same as not including std headers. llvm-svn: 130102
-
Sebastian Redl authored
Make the invalid declarator recovery when parsing members work the same as when parsing global decls. It's still rather broken (skipping much too far when the declarator belongs to a function definition), but at least not so broken as to mismatch braces. Tested by the removal of the fixme in the template test case. llvm-svn: 130101
-
Sebastian Redl authored
llvm-svn: 130100
-
Sebastian Redl authored
llvm-svn: 130099
-
Sebastian Redl authored
Store the full list of pending instantiations in a chained PCH. Previously we attempted to store only new pending instantiations, but our filter was incorrect, dropping implicit instantiations of class template members. It's just not worth coming up with a complex filter that is correct, when the only cost is PCH files that are a few hundred bytes (at most) larger. llvm-svn: 130098
-
Sebastian Redl authored
llvm-svn: 130097
-
Sebastian Redl authored
llvm-svn: 130096
-
Sebastian Redl authored
llvm-svn: 130095
-
Sebastian Redl authored
llvm-svn: 130094
-
Jay Foad authored
llvm-svn: 130093
-
Mikhail Glushenkov authored
llvm-svn: 130092
-
Mikhail Glushenkov authored
llvm-svn: 130091
-
Mikhail Glushenkov authored
llvm-svn: 130090
-
Francois Pichet authored
This fixes 1 error when parsing MSVC 2008 headers with clang. Must "return true;" even if it is a warning because the rest of the code path assumes that SS is set to something. The parser will get back on its feet and continue parsing the rest of the declaration correctly so it is not a problem. llvm-svn: 130088
-
Ken Dyck authored
intended. llvm-svn: 130087
-
Jay Foad authored
llvm-svn: 130086
-
Ken Dyck authored
functionality intended. llvm-svn: 130085
-
John McCall authored
function as a template argument where a pointer to function is wanted. Just extend the existing hack. llvm-svn: 130084
-
John McCall authored
I've sent off an email requesting clarification on a few things that I wasn't sure how to handle. This also necessitated making prefixes and unresolved-prefixes get mangled separately. llvm-svn: 130083
-
Douglas Gregor authored
performs name lookup for an identifier and resolves it to a type/expression/template/etc. in the same step. This scheme is intended to improve both performance (by reducing the number of redundant name lookups for a given identifier token) and error recovery (by giving Sema a chance to correct type names before the parser has decided that the identifier isn't a type name). For example, this allows us to properly typo-correct type names at the beginning of a statement: t.c:6:3: error: use of undeclared identifier 'integer'; did you mean 'Integer'? integer *i = 0; ^~~~~~~ Integer t.c:1:13: note: 'Integer' declared here typedef int Integer; ^ Previously, we wouldn't give a Fix-It because the typo correction occurred after the parser had checked whether "integer" was a type name (via Sema::getTypeName(), which isn't allowed to typo-correct) and therefore decided to parse "integer * i = 0" as an expression. By typo-correcting earlier, we typo-correct to the type name Integer and parse this as a declaration. Moreover, in this context, we can also typo-correct identifiers to keywords, e.g., t.c:7:3: error: use of undeclared identifier 'vid'; did you mean 'void'? vid *p = i; ^~~ void and recover appropriately. Note that this is very much a work-in-progress. The new Sema::ClassifyName is only used for expression-or-declaration disambiguation in C at the statement level. The next steps will be to make this work for the same disambiguation in C++ (where functional-style casts make some trouble), then push it further into the parser to eliminate more redundant name lookups. Fixes <rdar://problem/7963833> for C and starts us down the path of <rdar://problem/8172000>. llvm-svn: 130082
-
John McCall authored
APInt::toString doesn't do those, but it's easy to postprocess that output, and that's probably better than adding another knob to that method. llvm-svn: 130081
-
Argyrios Kyrtzidis authored
Put -Wunneeded-internal-declaration under UnusedFunction group so it will be disabled with -Wno-unused-function. llvm-svn: 130080
-