| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 90357
|
| |
|
|
|
|
| |
code, but to track this down was laborious.
llvm-svn: 90356
|
| |
|
|
|
|
|
| |
constructor, by keeping the DeclaratorInfo* rather than just the type
and a single location.
llvm-svn: 90355
|
| |
|
|
| |
llvm-svn: 90349
|
| |
|
|
|
|
| |
UseBumpAllocator.
llvm-svn: 90348
|
| |
|
|
|
|
| |
and funcctions declared locally within a function.
llvm-svn: 90344
|
| |
|
|
|
|
| |
that this was causing a problem, but it could have.
llvm-svn: 90343
|
| |
|
|
|
|
| |
members. Fixes PR5667.
llvm-svn: 90341
|
| |
|
|
|
|
|
| |
parameter setup code and set up the catch parameter setup code to
protect that code with terminate.
llvm-svn: 90340
|
| |
|
|
| |
llvm-svn: 90339
|
| |
|
|
| |
llvm-svn: 90335
|
| |
|
|
| |
llvm-svn: 90334
|
| |
|
|
| |
llvm-svn: 90331
|
| |
|
|
| |
llvm-svn: 90330
|
| |
|
|
|
|
|
|
|
|
|
|
| |
file. This is accomplished by introducing the notion of a "virtual"
file into the file manager, which provides a FileEntry* for a named
file whose size and modification time are known but which may not
exist on disk.
Added a cute little test that remaps both a .c file and a .h file it
includes to alternative files.
llvm-svn: 90329
|
| |
|
|
|
|
| |
generated, we mark any virtual implicit member functions as referenced.
llvm-svn: 90327
|
| |
|
|
| |
llvm-svn: 90322
|
| |
|
|
| |
llvm-svn: 90313
|
| |
|
|
|
|
| |
source files.
llvm-svn: 90311
|
| |
|
|
| |
llvm-svn: 90310
|
| |
|
|
|
|
|
| |
LookupResult::getAsSingleDecl() is no more. Shift Sema::LookupSingleName to
return null on overloaded results.
llvm-svn: 90309
|
| |
|
|
| |
llvm-svn: 90308
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-remap-file=from;to
which takes the file "from" and transparently replaces its contents
with the contents of the file "to" from the source manager's
perspective. This is the moral equivalent of
cp from saved
cp to from
<call clang>
cp saved from
rm saved
without all of the pesky file copying.
llvm-svn: 90307
|
| |
|
|
|
|
|
| |
leaked data structure than before. This kills off the last remaining
explicit uses of OverloadedFunctionDecl in Sema.
llvm-svn: 90306
|
| |
|
|
|
|
|
|
|
|
|
| |
Highlights include:
Add a helper to generate __cxa_free_exception and _ZSt9terminatev.
Add a region to handle EH object deallocation for ctor failures for throw.
Add a terminate handler for __cxa_end_catch.
A framework for adding cleanup actions for the exceptional edges only.
llvm-svn: 90305
|
| |
|
|
|
|
|
| |
isVirtual() before we've actually calculated whether the destructor is
virtual.
llvm-svn: 90303
|
| |
|
|
|
|
| |
it's rare, but possible, for the difference to be significant.
llvm-svn: 90301
|
| |
|
|
|
|
|
|
|
|
| |
files with the contents of an arbitrary memory buffer. Use this new
functionality to drastically clean up the way in which we handle file
truncation for code-completion: all of the truncation/completion logic
is now encapsulated in the preprocessor where it belongs
(<rdar://problem/7434737>).
llvm-svn: 90300
|
| |
|
|
|
|
|
|
|
|
|
| |
we don't need to use the DoneEvaluation hack when check for
ObjCMessageExpr.
PreVisitObjCMessageExpr() only checks for undefined receiver or arguments.
Add checker interface EvalNilReceiver(). This is a 'once-and-done' interface.
llvm-svn: 90296
|
| |
|
|
|
|
| |
ContentCache
llvm-svn: 90294
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
there's nothing interesting we can say now that we're correctly not requiring
the qualifier to name a known base class in dependent contexts.
Require scope specifiers on member access expressions to name complete types
if they're not dependent; delay lookup when they are dependent.
Use more appropriate diagnostics when qualified implicit member access
expressions find declarations from unrelated classes.
llvm-svn: 90289
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
(clang/driver) command line arguments (including the source file).
- The arguments are expected to include the source file.
- The idea is that even though this is a somewhat odd API, its the form which
many tools can most easily use (for example, by interposing with the compiler).
Also, switch index-test's -ast-from-source to use this entry point, and provide
a -arg command line argument which can be used to test that the command line
arguments are handled correctly.
llvm-svn: 90288
|
| |
|
|
|
|
| |
used to create a particular command.
llvm-svn: 90287
|
| |
|
|
| |
llvm-svn: 90285
|
| |
|
|
|
|
| |
Fixes pr5660.
llvm-svn: 90283
|
| |
|
|
|
|
|
|
|
|
| |
source locations with no common ancestor in the include stack, determine order by assuming memory buffers preceed files, and then that FileIDs are created in order.
The later assumption is patently false, but this was already broken -- this situation is conceptually impossible, my feeling is we should fix SourceManager and friends to make it impossible in practice as well. However, we need to fix PR5662 and perhaps some other things involving memory buffers first. In the short term I'm pretty sure this is reliable.
Chris, Argiris, is this going to break anything that wasn't already broken?
llvm-svn: 90280
|
| |
|
|
|
|
|
|
|
|
|
|
| |
in diagnostics when we fail to open a file. This allows us to
report things like:
$ clang test.c -I.
test.c:2:10: fatal error: error opening file './foo.h': Permission denied
#include "foo.h"
^
llvm-svn: 90276
|
| |
|
|
|
|
| |
"Fixes" PR5645.
llvm-svn: 90272
|
| |
|
|
|
|
| |
Gets clang-on-clang passing again.
llvm-svn: 90270
|
| |
|
|
| |
llvm-svn: 90267
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
implicit member access to a specific declaration, go ahead and create
it as a DeclRefExpr or a MemberExpr (with implicit CXXThisExpr base) as
appropriate. Otherwise, create an UnresolvedMemberExpr or
DependentScopeMemberExpr with a null base expression.
By representing implicit accesses directly in the AST, we get the ability
to correctly delay the decision about whether it's actually an instance
member access or not until resolution is complete. This permits us
to correctly avoid diagnosing the 'problem' of 'MyType::foo()'
where the relationship to the type isn't really known until instantiation.
llvm-svn: 90266
|
| |
|
|
| |
llvm-svn: 90263
|
| |
|
|
|
|
| |
to use it so it at least won't try to access Sema once it is gone.
llvm-svn: 90261
|
| |
|
|
|
|
|
|
| |
command line to the input file.
We passed <built-in> on the way in, so we should pass it again on the way out.
llvm-svn: 90250
|
| |
|
|
|
|
|
|
|
| |
implementation
of a subclass (direct or indirect) of a weak_import root class, emit a weak reference
for the root class's metaclass (should complete radar 6815425).
llvm-svn: 90249
|
| |
|
|
|
|
| |
recursive logic in the methods of ScanReachableSymbols.
llvm-svn: 90245
|
| |
|
|
| |
llvm-svn: 90244
|
| |
|
|
|
|
|
| |
override virtual functions. Also, eliminate a (now redundant) call to
AddOverriddenMethods.
llvm-svn: 90242
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
common to both parsing and template instantiation, so that we'll find
overridden virtuals for member functions of class templates when they
are instantiated.
Additionally, factor out the checking for pure virtual functions, so
that it will be executed both at parsing time and at template
instantiation time.
These changes fix PR5656 (for real), although one more tweak
w.r.t. member function templates will be coming along shortly.
llvm-svn: 90241
|
| |
|
|
|
|
|
|
|
|
| |
ValueDecl, because that isn't always the case in ill-formed
code. Diagnose a common mistake (forgetting to provide a template
argument list for a class template, PR5655) and dyn_cast so that we
handle the general problem of referring to a non-value declaration
gracefully.
llvm-svn: 90239
|