- Jul 17, 2012
-
-
Richard Smith authored
* Treat compound assignment as a use, at Jordy's request. * Always add compound assignments into the CFG, so we can correctly diagnose the use in 'return x += 1;' llvm-svn: 160334
-
- Jul 16, 2012
-
-
David Blaikie authored
Found while investigating PR13330 llvm-svn: 160318
-
David Blaikie authored
Review by Richard Smith. llvm-svn: 160306
-
Daniel Jasper authored
CXXFunctionalCastExprs. llvm-svn: 160252
-
Richard Smith authored
as an array of its base class TemplateArgument. Switch the const TemplateArgument* parameters of InstantiatingTemplate's constructors to ArrayRef<TemplateArgument> to prevent this from happening again in the future. llvm-svn: 160245
-
- Jul 15, 2012
-
-
Rafael Espindola authored
struct __attribute__((visibility("hidden"))) zed { }; struct __attribute__((visibility("hidden"))) zed; Which is a bit silly and got a lot noisier now that we correctly handle visibility pragmas. This patch fixes that and also has some extra quality improvements: * We now produce an error instead of a warning for struct __attribute__((visibility("hidden"))) zed { }; struct __attribute__((visibility("default"))) zed; * The "after definition" warning now points to the new attribute that is ignored instead of pointing to the declaration. llvm-svn: 160227
-
Rafael Espindola authored
llvm-svn: 160226
-
Eric Christopher authored
Finishes rdar://11875995 llvm-svn: 160225
-
- Jul 13, 2012
-
-
Rafael Espindola authored
we might use the declaration to build a type before seeing the definition. llvm-svn: 160176
-
Richard Smith authored
to the same signature. Fix a bug in the type printer which would cause this diagnostic to print wonderful types like 'const const int *'. llvm-svn: 160161
-
Rafael Espindola authored
canonical decl for the template, but that we were not merging attributes for templates at all! llvm-svn: 160157
-
Dmitri Gribenko authored
llvm-svn: 160156
-
- Jul 12, 2012
-
-
Rafael Espindola authored
pr13338. llvm-svn: 160105
-
Rafael Espindola authored
behavior and is the first step in fixing pr13338. llvm-svn: 160104
-
Nico Weber authored
Fixes PR13314, clang crashing on blocks refering to an enclosing local when the enclosing function returns void. llvm-svn: 160089
-
Richard Smith authored
static_assert fails when parsing the template, don't diagnose it again on every instantiation. llvm-svn: 160088
-
- Jul 11, 2012
-
-
Dmitri Gribenko authored
diagnostics implemented -- see testcases. I created a new TableGen file for comment diagnostics, DiagnosticCommentKinds.td, because comment diagnostics don't logically fit into AST diagnostics file. But I don't feel strongly about it. This also implements support for self-closing HTML tags in comment lexer and parser (for example, <br />). In order to issue precise diagnostics CommentSema needs to know the declaration the comment is attached to. There is no easy way to find a decl by comment, so we match comments and decls in lockstep: after parsing one declgroup we check if we have any new, not yet attached comments. If we do -- then we do the usual comment-finding process. It is interesting that this automatically handles trailing comments. We pick up not only comments that precede the declaration, but also comments that *follow* the declaration -- thanks to the lookahead in the lexer: after parsing the declgroup we've consumed the semicolon and looked ahead through comments. Added -Wdocumentation-html flag for semantic HTML errors to allow the user to disable only HTML warnings (but not HTML parse errors, which we emit as warnings in -Wdocumentation). llvm-svn: 160078
-
Rafael Espindola authored
llvm-svn: 160057
-
Rafael Espindola authored
instantiation depends on the template, its arguments and parameters, but not where it is instantiated. llvm-svn: 160034
-
- Jul 10, 2012
-
-
Tanya Lattner authored
llvm-svn: 159965
-
- Jul 09, 2012
-
-
Abramo Bagnara authored
llvm-svn: 159961
-
Jordan Rose authored
Chris pointed out that while the comparison is certainly problematic and does not have well-defined behavior, it isn't any worse than some of the other abuses that we merely warn about and doesn't need to make the compilation fail. Revert the release notes change (r159766) now that this is just a new warning. llvm-svn: 159939
-
Alexander Kornienko authored
llvm-svn: 159925
-
Richard Smith authored
* When substituting a reference to a non-type template parameter pack where the corresponding argument is a pack expansion, transform into an expression which contains an unexpanded parameter pack rather than into an expression which contains a pack expansion. This causes the SubstNonTypeTemplateParmExpr to be inside the PackExpansionExpr, rather than outside, so the expression still looks like a pack expansion and can be deduced. * Teach MarkUsedTemplateParameters that we can deduce a reference to a template parameter if it's wrapped in a SubstNonTypeTemplateParmExpr (such nodes are added during alias template substitution). llvm-svn: 159922
-
- Jul 08, 2012
-
-
Simon Atanasyan authored
MIPS: Range check __builtin_mips_wrdsp / __builtin_mips_rddsp arguments against the upper/lower values. llvm-svn: 159911
-
Richard Smith authored
expression, skip over any SubstNonTypeTemplateParmExprs which alias templates may have inserted before checking for a DeclRefExpr referring to a non-type template parameter declaration. llvm-svn: 159909
-
Richard Smith authored
llvm-svn: 159908
-
Richard Smith authored
-ftemplate-depth limit. There are various ways to get an infinite (or merely huge) stack of substitutions with no intervening instantiations. This is also consistent with gcc's behavior. llvm-svn: 159907
-
Richard Smith authored
misreduction of PR13290. llvm-svn: 159905
-
- Jul 07, 2012
-
-
Richard Smith authored
initializer list. Patch by Olivier Goffart, with extra testcases by Meador Inge and Daniel Lunow. llvm-svn: 159896
-
Richard Smith authored
which will appear in the vtable as used, not just those ones which were declared within the class itself. Fixes an issue reported as comment#3 in PR12763 -- we sometimes assert in codegen if we try to emit a reference to a function declaration which we've not marked as referenced. This also matches gcc's observed behavior. llvm-svn: 159895
-
- Jul 06, 2012
-
-
Fariborz Jahanian authored
a 'weak' property just as we do the same for 'weak' variables. // rdar://11814185 llvm-svn: 159859
-
Fariborz Jahanian authored
over objective-c container collection. // rdar://9293227 llvm-svn: 159847
-
Dmitri Gribenko authored
very simple semantic analysis that just builds the AST; minor changes for lexer to pick up source locations I didn't think about before. Comments AST is modelled along the ideas of HTML AST: block and inline content. * Block content is a paragraph or a command that has a paragraph as an argument or verbatim command. * Inline content is placed within some block. Inline content includes plain text, inline commands and HTML as tag soup. llvm-svn: 159790
-
Fariborz Jahanian authored
under -Wsuper-class-method-mismatch for method mismatches in current and suprt class. // rdar://11793793 llvm-svn: 159784
-
- Jul 05, 2012
-
-
Richard Smith authored
actually perform value initialization rather than trying to fake it with a call to the default constructor. Fixes various bugs related to the previously-missing zero-initialization in this case. I've also moved this and the other list initialization 'special case' from TryConstructorInitialization into TryListInitialization where they belong. llvm-svn: 159733
-
- Jul 04, 2012
-
-
Benjamin Kramer authored
This required moving the ctors for IntegerLiteral and FloatingLiteral out of line which shouldn't change anything as they are usually called through Create methods that are already out of line. ASTContext::Deallocate has been a nop for a long time, drop it from ASTVector and make it independent from ASTContext.h Pass the StorageAllocator directly to AccessedEntity so it doesn't need to have a definition of ASTContext around. llvm-svn: 159718
-
Benjamin Kramer authored
Move the ASTContext-dependent version out of line. llvm-svn: 159717
-
Abramo Bagnara authored
llvm-svn: 159706
-
Fariborz Jahanian authored
objective-c's fast enumeration statement, for more work to come. llvm-svn: 159689
-