- Oct 15, 2011
-
-
Benjamin Kramer authored
llvm-svn: 142072
-
Chandler Carruth authored
It's the last include-stack-root we tried to walk up. Use a better name and better doxyments for it. llvm-svn: 142071
-
Chandler Carruth authored
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
-
Chandler Carruth authored
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
-
Chandler Carruth authored
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
-
Chandler Carruth authored
interface now that its only caller is there. llvm-svn: 142065
-
Chandler Carruth authored
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
-
Chandler Carruth authored
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
-
Richard Smith authored
llvm-svn: 142057
-
Richard Smith authored
llvm-svn: 142056
-
Richard Smith authored
llvm-svn: 142054
-
Richard Smith authored
llvm-svn: 142049
-
Richard Smith authored
'final', and don't accept (then silently discard) braced init lists in C++98 new-expressions. llvm-svn: 142048
-
Eli Friedman authored
llvm-svn: 142047
-
Chandler Carruth authored
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
-
Richard Smith authored
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
-
Douglas Gregor authored
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
-
Peter Collingbourne authored
llvm-svn: 142020
-
Anton Korobeynikov authored
Lack of half FP was a regression compared to llvm-gcc. llvm-svn: 142016
-
Eli Friedman authored
llvm-svn: 142014
-
Eli Friedman authored
llvm-svn: 142012
-
- Oct 14, 2011
-
-
Douglas Gregor authored
llvm-svn: 142009
-
Eli Friedman authored
llvm-svn: 142008
-
Argyrios Kyrtzidis authored
llvm-svn: 142004
-
Eli Friedman authored
llvm-svn: 142002
-
Richard Smith authored
llvm-svn: 141999
-
Douglas Gregor authored
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
-
Richard Smith authored
Reinstate r141898 (reverted in r141921), without the -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
-
Richard Smith authored
llvm-svn: 141983
-
Richard Smith authored
llvm-svn: 141982
-
Rafael Espindola authored
llvm-svn: 141980
-
Benjamin Kramer authored
Passing a pointer was a bad idea as it collides with the overload for void*. llvm-svn: 141971
-
Benjamin Kramer authored
llvm-svn: 141970
-
Benjamin Kramer authored
llvm-svn: 141969
-
Benjamin Kramer authored
llvm-svn: 141968
-
Fariborz Jahanian authored
llvm-svn: 141967
-
Fariborz Jahanian authored
property type, for when getter may be a reference type. // rdar://10188258 revised. llvm-svn: 141966
-
Argyrios Kyrtzidis authored
llvm-svn: 141964
-
Douglas Gregor authored
attribute from the first declaration to later declarations. Fixes <rdar://problem/10142572>. llvm-svn: 141957
-
Matt Beaumont-Gay authored
llvm-svn: 141955
-