| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 124083
|
|
|
|
|
|
| |
OK since the new syntax is unambiguous and can't be confused with C++98 syntax. If anyone disagrees, please shout!
llvm-svn: 124048
|
|
|
|
|
|
| |
used as a base.
llvm-svn: 124039
|
|
|
|
| |
llvm-svn: 124036
|
|
|
|
| |
llvm-svn: 124035
|
|
|
|
| |
llvm-svn: 123878
|
|
|
|
|
|
| |
suggested by Doug.
llvm-svn: 123876
|
|
|
|
|
|
|
| |
definition, rather than complaining about it. Problem reported by
Marshall Clow.
llvm-svn: 123835
|
|
|
|
|
|
| |
-Wint-to-pointer-cast.
llvm-svn: 123719
|
|
|
|
| |
llvm-svn: 123612
|
|
|
|
|
|
|
| |
Enforce C++[class.mem]p8:
A virt-specifier-seq shall contain at most one of each virt-specifier.
llvm-svn: 123611
|
|
|
|
|
|
|
|
|
| |
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm
This lands support for parsing virt-specifier-seq after member functions, including the
contextual keywords 'final', and 'override'. The keywords are not yet used for anything.
llvm-svn: 123606
|
|
|
|
|
|
|
| |
more accurate, and makes it make sense for it to hold a delegating constructor
call.
llvm-svn: 123084
|
|
|
|
|
|
|
| |
initialize those lovely mixins that come from pack expansions of base
specifiers.
llvm-svn: 122793
|
|
|
|
| |
llvm-svn: 122782
|
|
|
|
|
|
|
| |
on array and function declarators. This is pretty far from complete, and I'll
revisit it later if someone doesn't beat me to it.
llvm-svn: 122535
|
|
|
|
|
|
|
| |
specifications. We can't yet instantiate them, however, since I
tripped over PR8835.
llvm-svn: 122292
|
|
|
|
| |
llvm-svn: 121488
|
|
|
|
| |
llvm-svn: 120828
|
|
|
|
|
|
|
|
|
| |
http://llvm.org/bugs/show_bug.cgi?id=8558). This patch fixes it. Thanks to
rjmccall for all the coaching!
Approved by rjmccall
llvm-svn: 119697
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
manually managing them
using new/delete and OwningPtrs. After memory profiling Clang, I witnessed periodic leaks of these
objects; digging deeper into the code, it was clear that our management of these objects was a mess. The ownership rules were murky at best, and not always followed. Worse, there are plenty of error paths where we could screw up.
This patch introduces AttributeList::Factory, which is a factory class that creates AttributeList
objects and then blows them away all at once. While conceptually simple, most of the changes in
this patch just have to do with migrating over to the new interface. Most of the changes have resulted in some nice simplifications.
This new strategy currently holds on to all AttributeList objects during the lifetime of the Parser
object. This is easily tunable. If we desire to have more bound the lifetime of AttributeList
objects more precisely, we can have the AttributeList::Factory object (in Parser) push/pop its
underlying allocator as we enter/leave key methods in the Parser. This means that we get
simple memory management while still having the ability to finely control memory use if necessary.
Note that because AttributeList objects are now BumpPtrAllocated, we may reduce malloc() traffic
in many large files with attributes.
This fixes the leak reported in: <rdar://problem/8650003>
llvm-svn: 118675
|
|
|
|
|
|
| |
Recover from the latter and fail early for the former. Fixes PR8022.
llvm-svn: 118669
|
|
|
|
| |
llvm-svn: 118626
|
|
|
|
|
|
| |
being constructed.
llvm-svn: 118625
|
|
|
|
|
|
| |
Fixes rdar://problem/8568507
llvm-svn: 116843
|
|
|
|
|
|
|
| |
construct an unsupported friend when there's a friend with a templated
scope specifier. Fixes a consistency crash, rdar://problem/8540527
llvm-svn: 116786
|
|
|
|
|
|
| |
Manuel Klimek! Fixes PR7715.
llvm-svn: 116311
|
|
|
|
|
|
| |
skipped and not inserted into the AST for now.
llvm-svn: 116203
|
|
|
|
|
|
| |
bit by me).
llvm-svn: 116122
|
|
|
|
|
|
|
|
|
|
| |
auto f(int) -> int
from Daniel Wallin!
(With a few minor bug fixes from me).
llvm-svn: 115322
|
|
|
|
| |
llvm-svn: 114762
|
|
|
|
|
|
|
|
| |
with comma-separated lists. We never actually used the comma
locations, nor did we store them in the AST, but we did manage to
waste time during template instantiation to produce fake locations.
llvm-svn: 113495
|
|
|
|
|
|
| |
the end of a statement. Fixes <rdar://problem/6896493>.
llvm-svn: 113202
|
|
|
|
|
|
| |
enumeration definition. Fixes <rdar://problem/7159693>.
llvm-svn: 113201
|
|
|
|
|
|
| |
member initializers in a C++ constructor. Fixes <rdar://problem/7796492>.
llvm-svn: 113199
|
|
|
|
| |
llvm-svn: 112566
|
|
|
|
|
|
| |
a constructor.
llvm-svn: 112330
|
|
|
|
| |
llvm-svn: 112320
|
|
|
|
|
|
|
|
|
| |
One who seeks the Tao unlearns something new every day.
Less and less remains until you arrive at non-action.
When you arrive at non-action,
nothing will be left undone.
llvm-svn: 112244
|
|
|
|
|
|
| |
from Francois Pichet! Fixes PR7754.
llvm-svn: 111912
|
|
|
|
|
|
|
| |
M-x query-replace-regexp
\(Sema::\|Action::\|Parser::\|\)Owning\(Expr\|Stmt\)Result -> \2Result
llvm-svn: 111903
|
|
|
|
| |
llvm-svn: 111901
|
|
|
|
| |
llvm-svn: 111863
|
|
|
|
|
|
| |
through the parser.
llvm-svn: 111800
|
|
|
|
| |
llvm-svn: 111795
|
|
|
|
| |
llvm-svn: 111733
|
|
|
|
|
|
|
|
|
| |
- move DeclSpec &c into the Sema library
- move ParseAST into the Parse library
Reflect this change in a thousand different includes.
Reflect this change in the link orders.
llvm-svn: 111667
|
|
|
|
|
|
|
|
| |
-There are 2 instances that change the TokenID for GNU libstdc++ 4.2 compatibility.
To handler those cases introduce a RevertedTokenID bitfield, RevertTokenIDToIdentifier() and hasRevertedTokenIDToIdentifier() methods.
Store the bitfield in PCH.
llvm-svn: 110868
|
|
|
|
|
|
| |
Patch by Francois Pichet!
llvm-svn: 110344
|
|
|
|
| |
llvm-svn: 109865
|