| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
the chunk ID not the file ID. This exposes problems in
TextDiagnosticPrinter where it should have been using the canonical
file ID but wasn't. Fix these along the way.
llvm-svn: 62427
|
| |
|
|
| |
llvm-svn: 62426
|
| |
|
|
|
|
|
|
|
|
|
| |
method. This lets us clean up the interface and make it more obvious that
this method is *really really* _Pragma specific.
Note that _Pragma handling uglifies the Lexer in the critical path. It would
be very interesting to consider making _Pragma remapping be a new special
lexer class of its own.
llvm-svn: 62425
|
| |
|
|
| |
llvm-svn: 62424
|
| |
|
|
|
|
| |
of a SourceLocation. This should speed it up and definitely simplifies it.
llvm-svn: 62422
|
| |
|
|
|
|
| |
creating a whole lexer when we just want one static method.
llvm-svn: 62420
|
| |
|
|
| |
llvm-svn: 62419
|
| |
|
|
|
|
| |
embedded magic.
llvm-svn: 62417
|
| |
|
|
|
|
| |
entire file.
llvm-svn: 62414
|
| |
|
|
| |
llvm-svn: 62411
|
| |
|
|
|
|
| |
the implementation of PTHManager::getSpelling.
llvm-svn: 62408
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"FileID" a concept that is now enforced by the compiler's type checker
instead of yet-another-random-unsigned floating around.
This is an important distinction from the "FileID" currently tracked by
SourceLocation. *That* FileID may refer to the start of a file or to a
chunk within it. The new FileID *only* refers to the file (and its
#include stack and eventually #line data), it cannot refer to a chunk.
FileID is a completely opaque datatype to all clients, only SourceManager
is allowed to poke and prod it.
llvm-svn: 62407
|
| |
|
|
| |
llvm-svn: 62403
|
| |
|
|
|
|
|
| |
content cache directly. Content cache has a 1-1 mapping with fileentries,
whereas multiple FileIDs can be the same FileEntry.
llvm-svn: 62401
|
| |
|
|
|
|
| |
rdar://problem/6503878
llvm-svn: 62397
|
| |
|
|
|
|
| |
old logic to determine the value of a switch 'case' label.
llvm-svn: 62395
|
| |
|
|
| |
llvm-svn: 62391
|
| |
|
|
| |
llvm-svn: 62387
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
even when we are still defining the TagDecl. This is required so that
qualified name lookup of a class name within its definition works (see
the new bits in test/SemaCXX/qualified-id-lookup.cpp).
As part of this, move the nested redefinition checking code into
ActOnTag. This gives us diagnostics earlier (when we try to perform
the nested redefinition, rather than when we try to complete the 2nd
definition) and removes some code duplication.
llvm-svn: 62386
|
| |
|
|
| |
llvm-svn: 62382
|
| |
|
|
|
|
| |
Fix a type error; parser wanted to pass the third part of a for-statement as a statement; should be expression.
llvm-svn: 62380
|
| |
|
|
|
|
| |
*is* the location. This eliminates some weird X.getLocation().getLocation()'s.
llvm-svn: 62376
|
| |
|
|
|
|
|
| |
containing one. Containment is generally better than derivation,
but in this case FullSourceLoc really 'isa' SourceLocation.
llvm-svn: 62375
|
| |
|
|
| |
llvm-svn: 62374
|
| |
|
|
| |
llvm-svn: 62371
|
| |
|
|
| |
llvm-svn: 62370
|
| |
|
|
| |
llvm-svn: 62368
|
| |
|
|
|
|
| |
type.
llvm-svn: 62355
|
| |
|
|
|
|
| |
Issue diagnostics instead if types do not match.
llvm-svn: 62349
|
| |
|
|
|
|
|
|
| |
if warnings in system headers are disabled. isIdenticalTo can end up
calling the expensive getSpelling method, and other bad stuff and is
completely unneeded if the warning will be discarded anyway. rdar://6502956
llvm-svn: 62347
|
| |
|
|
| |
llvm-svn: 62346
|
| |
|
|
|
|
| |
with reference type (it should be an lvalue with non-reference type).
llvm-svn: 62345
|
| |
|
|
|
|
| |
Stmt::printPretty() for the StringLiteral.
llvm-svn: 62340
|
| |
|
|
|
|
| |
escapes.
llvm-svn: 62337
|
| |
|
|
| |
llvm-svn: 62335
|
| |
|
|
| |
llvm-svn: 62334
|
| |
|
|
|
|
| |
notifying PPCallbacks about it.
llvm-svn: 62333
|
| |
|
|
|
|
|
| |
into its ctor. Also, make it handle validity checking of pascal
strings instead of making clients do it.
llvm-svn: 62332
|
| |
|
|
|
|
| |
typedefs.
llvm-svn: 62331
|
| |
|
|
|
|
|
|
| |
analysis and AST-building for the cases where we have N != 1
arguments. For N == 1 arguments, we need to finish the C++
implementation of explicit type casts (C++ [expr.cast]).
llvm-svn: 62329
|
| |
|
|
|
|
| |
in code gen.
llvm-svn: 62326
|
| |
|
|
|
|
| |
to do the promotion before checking the type - fixes PR3340.
llvm-svn: 62323
|
| |
|
|
|
|
|
|
|
|
| |
documented here:
http://msdn.microsoft.com/en-us/library/7f0aews7(VS.80).aspx
This is according to my understanding reading the docs, I don't know if it
really agrees fully with what VC++ allows.
llvm-svn: 62317
|
| |
|
|
|
|
| |
"logical" location, refer to the "instantiation" location.
llvm-svn: 62316
|
| |
|
|
| |
llvm-svn: 62315
|
| |
|
|
|
|
|
| |
Slightly speed up sema of numbers like '1' by going directly to
TargetInfo instead of through ASTContext.
llvm-svn: 62314
|
| |
|
|
| |
llvm-svn: 62313
|
| |
|
|
| |
llvm-svn: 62311
|
| |
|
|
|
|
|
| |
the "physical" location of tokens, refer to the "spelling" location.
This is more concrete and useful, tokens aren't really physical objects!
llvm-svn: 62309
|
| |
|
|
| |
llvm-svn: 62306
|