- Dec 21, 2010
-
-
Douglas Gregor authored
classes, categories, protocols, and class extensions, where the methods and properties of these entities would be inserted into the DeclContext in an ordering that doesn't necessarily reflect source order. The culprits were Sema::ActOnMethodDeclaration(), which did not perform the insertion of the just-created method declaration into the DeclContext for these Objective-C entities, and Sema::ActOnAtEnd(), which inserted all method declarations at the *end* of the DeclContext. With this fix in hand, clean up the code-completion actions for property setters/getters that worked around this brokenness in the AST. Fixes <rdar://problem/8062781>, where this problem manifested as poor token-annotation information, but this would have struck again in many other places. llvm-svn: 122347
-
Michael J. Spencer authored
llvm-svn: 122340
-
Michael J. Spencer authored
llvm-svn: 122339
-
Douglas Gregor authored
information caused token-annotation to fail in funny ways. Fixes <rdar://problem/8595386>. llvm-svn: 122338
-
Douglas Gregor authored
llvm-svn: 122325
-
Douglas Gregor authored
looking in is complete. Fixes PR8756. llvm-svn: 122323
-
Douglas Gregor authored
checking trivial comparisons. Fixes PR8795. llvm-svn: 122322
-
Francois Pichet authored
Fix PR8832. llvm-svn: 122311
-
Douglas Gregor authored
in an exception specification. llvm-svn: 122297
-
John McCall authored
Apply the noreturn attribute while creating a builtin function's type. Remove the getNoReturnType() API. llvm-svn: 122295
-
Fariborz Jahanian authored
unknown type and there is a possibility that at runtime method is resolved to a deprecated or unavailable method. Addreses // rdar://8769853 llvm-svn: 122294
-
Douglas Gregor authored
specifications. We can't yet instantiate them, however, since I tripped over PR8835. llvm-svn: 122292
-
Douglas Gregor authored
lists, so that all such transformations go through a single, iterator-based transformation function. This is the only place where we need to implement the logic for transforming pack expansions whose pattern is a template argument. Unfortunately, the new cases this refactoring brings into the fold can't be meaningfully tested yet. We need template argument deduction to work well enough for variadic function templates first. llvm-svn: 122289
-
Douglas Gregor authored
shouldWalkTypesOfTypeLocs() that determines whether it should walk the Types within TypeLocs. This walk is redundant, but perhaps required for some clients. Disabling this redundant walk in the unexpanded parameter pack finder produces better results, because we get parameter packs with source location info *unless* such source location information isn't available. llvm-svn: 122287
-
- Dec 20, 2010
-
-
Douglas Gregor authored
the first qualifier in scope. We can't adequately test this test, unfortunately. llvm-svn: 122283
-
Rafael Espindola authored
don't warn if an argument is not used because it is shadowed by a subsequent argument. llvm-svn: 122281
-
Douglas Gregor authored
getting extra "<>" delimiters around template argument packs. llvm-svn: 122280
-
Douglas Gregor authored
whose patterns are template arguments. We can now instantiate, e.g., typedef tuple<pair<OuterTypes, InnerTypes>...> type; where OuterTypes and InnerTypes are template type parameter packs. There is a horrible inefficiency in TemplateArgumentLoc::getPackExpansionPattern(), where we need to create copies of TypeLoc data because our interfaces traffic in TypeSourceInfo pointers where they should traffic in TypeLocs instead. I've isolated in efficiency in this one routine; once we refactor our interfaces to traffic in TypeLocs, we can eliminate it. llvm-svn: 122278
-
Ted Kremenek authored
llvm-svn: 122271
-
Ted Kremenek authored
llvm-svn: 122270
-
Matt Beaumont-Gay authored
llvm-svn: 122257
-
Douglas Gregor authored
centralizing the transformation into two routines. No functionality change. llvm-svn: 122253
-
Douglas Gregor authored
the list traversal. Part 1, no functionality change. llvm-svn: 122252
-
Douglas Gregor authored
a parameter pack, check the parameter pack against each of the template arguments it corresponds to, then pack the converted arguments into a template argument pack. Allows us to use variadic class templates so long as instantiation isn't required, e.g., template<typename... Types> struct Tuple; Tuple<int, float> *t2; llvm-svn: 122251
-
Douglas Gregor authored
area of printing template arguments. The functionality changes here are limited to cases of variadic templates that aren't yet enabled. llvm-svn: 122250
-
Francois Pichet authored
llvm-svn: 122230
-
Francois Pichet authored
llvm-svn: 122226
-
Douglas Gregor authored
pack expansions, e.g. given template<typename... Types> struct tuple; template<typename... Types> struct tuple_of_refs { typedef tuple<Types&...> types; }; the type of the "types" typedef is a PackExpansionType whose pattern is Types&. This commit introduces support for creating pack expansions for template type arguments, as above, but not for any other kind of pack expansion, nor for any form of instantiation. llvm-svn: 122223
-
Francois Pichet authored
llvm-svn: 122220
-
- Dec 19, 2010
-
-
Nick Lewycky authored
llvm-svn: 122194
-
Wesley Peck authored
2. Add attibutes "interrupt_handler" and "save_volatiles" for the Microblaze target. llvm-svn: 122184
-
Francois Pichet authored
example: struct __declspec(uuid("6d5140c1-7436-11ce-8034-00aa006009fa")) test { }; llvm-svn: 122173
-
John McCall authored
llvm-svn: 122162
-
Zhongxing Xu authored
create a temporary object for it. llvm-svn: 122161
-
- Dec 18, 2010
-
-
Zhongxing Xu authored
llvm-svn: 122146
-
Michael J. Spencer authored
llvm-svn: 122140
-
John McCall authored
don't provide their own explicit visibility attributes should get them from the template. Fixes rdar://problem/8778497. llvm-svn: 122136
-
Michael J. Spencer authored
llvm-svn: 122117
-
- Dec 17, 2010
-
-
Eric Christopher authored
llvm-svn: 122096
-
Fariborz Jahanian authored
implicitly atomic under -Wimplicit-atomic-properties flag. // rdar://8774580 llvm-svn: 122095
-