| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 142072
|
| |
|
|
|
|
|
| |
It's the last include-stack-root we tried to walk up. Use a better name
and better doxyments for it.
llvm-svn: 142071
|
| |
|
|
|
|
|
|
|
| |
TextDiagnosticPrinter argument to the TextDiagnostic helper class. This
cements the proper ordering of things: TextDiagnostic is now a viable
stand-alone class for emitting pretty-printed textual diagnostics to
a terminal.
llvm-svn: 142070
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
utility. This is a particularly nice win because it removes a pile of
parameters from these routines. Also name them a bit better. I'm trying
to follow the pattern of 'emit' routines writing directly to what is
expected to be the final output, while 'print' routines take a output
stream argument and can be used to build up intermediate buffers, etc.
Also, fix a bug I spotted by inspection from my last commit where
'LastLoc' and 'LastNonNoteLoc' were reversed. It's really scary that
this didn't trigger a single test failure. Will be working on tests for
more of this functionality now.
llvm-svn: 142069
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
across emissions.
1) The include stack printing is conditioned on non-note diagnostics,
not just on warning diagnostics.
2) Those should be full source locations as they're tied to a source
manager.
3) We should pass in the prior state to the TextDiagnostic constructor,
allow it to mutate as diagnostics are emitted, and then cache the
final state before tearing it down.
Some of this remains incomplete, specifically #3 isn't finished for the
non-note location. That'll come when the include stack printing sinks
down a level.
This also highlights how *completely* bug-ridden this code is. For
example, we currently do all these comparisons of a FullSourceLoc and
a SourceLocation... which silently does a SourceLocation to
SourceLocation comparison, completely disregarding the source manager
from whence one of the arguments came. Oops! Good thing in practice this
wasn't important, but it could in theory be suppressing caret
diagnostics in a second TU on a single clang invocation. I'm hoping to
hammer these bugs out as the refactorings occur, although for so many of
them it's really unlikely I can dream up a test case that would show the
potentially buggy behavior.
llvm-svn: 142067
|
| |
|
|
|
|
| |
interface now that its only caller is there.
llvm-svn: 142065
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
consumer. The TextDiagnostic interface now has a generic entry point for
emitting a diagnostic which uses a minimal interface that should be
compatible with StoredDiagnostics such as are available in libclang etc.
Some unfortunate shuffling of static functions as things get relocated.
Also some unfortunate public interface points added to
TextDiagnosticPrinter, but those are the next bits to get moved so they
won't last long.
llvm-svn: 142064
|
| |
|
|
|
|
|
|
|
|
|
| |
to operate directly on the source location and ranges associated with
a diagnostic rather than digging them out of the diagnostic. This had
a side benefit of cleaning up its code a tiny bit by using the ArrayRef
interface.
No functionality changed.
llvm-svn: 142063
|
| |
|
|
| |
llvm-svn: 142057
|
| |
|
|
| |
llvm-svn: 142056
|
| |
|
|
|
|
| |
class/struct definition.
llvm-svn: 142054
|
| |
|
|
| |
llvm-svn: 142049
|
| |
|
|
|
|
|
| |
'final', and don't accept (then silently discard) braced init lists in C++98
new-expressions.
llvm-svn: 142048
|
| |
|
|
|
|
| |
expressions. PR10582.
llvm-svn: 142047
|
| |
|
|
|
|
|
|
| |
Also note that it is actually doing much more than it should. This paves
the way for building a more generic 'Emit' routine that is the real
entry point here.
llvm-svn: 142035
|
| |
|
|
|
|
|
|
| |
This also adds a -Wc++98-compat-pedantic for warning on constructs which would
be diagnosed by -std=c++98 -pedantic (that is, it warns even on C++11 features
which we enable by default, with no warning, in C++98 mode).
llvm-svn: 142034
|
| |
|
|
|
|
|
|
|
|
| |
avoids loading data from an external source, since those lookups were
causing some "interesting" recursion in LLDB.
This code is not efficient. I plan to remedy this inefficiency in a
follow-up commit.
llvm-svn: 142023
|
| |
|
|
| |
llvm-svn: 142020
|
| |
|
|
|
|
| |
Lack of half FP was a regression compared to llvm-gcc.
llvm-svn: 142016
|
| |
|
|
| |
llvm-svn: 142014
|
| |
|
|
| |
llvm-svn: 142012
|
| |
|
|
| |
llvm-svn: 142009
|
| |
|
|
| |
llvm-svn: 142008
|
| |
|
|
|
|
| |
created ASTUnit.
llvm-svn: 142004
|
| |
|
|
|
|
| |
_Atomic types.
llvm-svn: 142002
|
| |
|
|
| |
llvm-svn: 141999
|
| |
|
|
|
|
|
|
| |
through varargs. This only happens when we're in an unevaluated
context, where we don't want to trigger an error anyway. Fixes PR11131
/ <rdar://problem/10288375>.
llvm-svn: 141986
|
| |
|
|
|
|
|
|
| |
-Wc++98-compat-variadic-templates flag. Consensus is that -Wc++98-compat is a useful addition to clang, but per-C++11-feature warnings may not be.
Original patch by Jeffrey Yasskin.
llvm-svn: 141985
|
| |
|
|
|
|
| |
evaluation.
llvm-svn: 141983
|
| |
|
|
| |
llvm-svn: 141982
|
| |
|
|
| |
llvm-svn: 141980
|
| |
|
|
|
|
|
|
| |
of a pointer.
Passing a pointer was a bad idea as it collides with the overload for void*.
llvm-svn: 141971
|
| |
|
|
| |
llvm-svn: 141970
|
| |
|
|
| |
llvm-svn: 141969
|
| |
|
|
| |
llvm-svn: 141968
|
| |
|
|
| |
llvm-svn: 141967
|
| |
|
|
|
|
|
| |
property type, for when getter may be a reference type.
// rdar://10188258 revised.
llvm-svn: 141966
|
| |
|
|
| |
llvm-svn: 141964
|
| |
|
|
|
|
|
| |
attribute from the first declaration to later declarations. Fixes
<rdar://problem/10142572>.
llvm-svn: 141957
|
| |
|
|
| |
llvm-svn: 141955
|
| |
|
|
|
|
|
| |
within the template parameter list that may have changed now that we
know the current instantiation. Fixes <rdar://problem/10194295>.
llvm-svn: 141954
|
| |
|
|
|
|
| |
retrieve annotations from completion string.
llvm-svn: 141953
|
| |
|
|
|
|
| |
Serialization part will come later.
llvm-svn: 141950
|
| |
|
|
|
|
| |
Avoid possible infinite loop when iterating over an ObjCMethod's redeclarations.
llvm-svn: 141946
|
| |
|
|
|
|
|
|
|
| |
There are now separate Triple::MacOSX and Triple::IOS values for the OS
so comparing against Triple::Darwin will fail to match those. Note that
I changed the expected output for the Driver/rewrite-objc.m test, which had
previously not been passing Darwin-specific options with the macosx triple.
llvm-svn: 141944
|
| |
|
|
|
|
| |
zero-initialization before running its constructor.
llvm-svn: 141933
|
| |
|
|
|
|
| |
operator is seen, from Jason Haslam!
llvm-svn: 141926
|
| |
|
|
| |
llvm-svn: 141921
|
| |
|
|
|
|
| |
// rdar://10239594
llvm-svn: 141915
|
| |
|
|
|
|
|
| |
c++11. The old names are kept for backwards-compatibility. Patch by Ahmed
Charles! Names for backwards-compatible DiagGroups removed by me.
llvm-svn: 141913
|