History log of /external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
85c48510a6fbbdad61cae381b4d788d388d62458 22-Jul-2013 Craig Topper <craig.topper@gmail.com> Const-correct some iterators. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
519f26bd78c4743bb56e6fb74d9c5163f73d859c 19-Jul-2013 Craig Topper <craig.topper@gmail.com> Remove trailing whitespace

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
566bf620e1b52860b641e0feae910d40ce883afc 05-May-2013 Dmitri Gribenko <gribozavr@gmail.com> ArrayRef<T>() -> None cleanup


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181140 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
943f909ba72a1c9351dd421cac1413d303a719f1 21-Feb-2013 Ted Kremenek <kremenek@apple.com> Strip 'llvm' from 'llvm::Optional' uses.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
98e7369d9ef5e53964cc8ae48ec2dfcf6c4633c0 10-Jan-2013 Jordan Rose <jordan_rose@apple.com> Error if an anonymous DiagGroup is referenced multiple times.

Not only is this inefficient for TableGen, it's annoying for maintenance
when renaming warning flags (unusual) or adding those flags to a group
(more likely).

This uses the new fix-it infrastructure for LLVM's SourceMgr/SMDiagnostic,
as well as a few changes to TableGen to track more source information.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
30bc63ffbab71522e5c5a9adc5054e462a0cbf65 04-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort the #include lines under utils/...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169245 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
38859ee4a3c1253d5a45ed3f6b52e77702bfd913 25-Oct-2012 Joerg Sonnenberger <joerg@bec.de> Don't throw exceptions in clang-tblgen by switching to PrintFatalError.
Add locations in a number of places, where they are available for free.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166691 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
1ab46323089f9a836a510521aab55ff958b67150 10-Oct-2012 Sean Silva <silvas@purdue.edu> tblgen: Use LLVM-style RTTI in clang-tblgen

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165649 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
bb5185c0ca3de4e7d91d011a83c902d7b02a2a1a 10-Aug-2012 Ted Kremenek <kremenek@apple.com> Fix horrible regression in control of warnings caused by introduction of -Wpedantic.
While -Wpedantic was reasonable, -Wno-pedantic would turn off a bunch of warnings that
are on by default. This counters the intention of this warning flag.

To fix this, -Wpedantic now includes extentions that are not on by default. The
remaining warnings will manifest anyway, and won't accidentally get turned off
by -Wno-pedantic.

Fixes <rdar://problem/12076105>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
7094dee95f8c915d27097ac18b47d1ef31fd72ed 10-Aug-2012 Joerg Sonnenberger <joerg@bec.de> Add missing cctype includes.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
4a535368eb4fca10b05c442e04725747dbf76081 07-Aug-2012 Ted Kremenek <kremenek@apple.com> Enhance ClangDiagnosticsEmitter to reject diagnostics that are errors that are also
included in warning groups. Warning groups can only contain warnings, because only
warnings can be mapped to errors or ignored.

This caught a few diagnostics that were incorrectly in diagnostic groups, and
could have resulted in a compiler crash when those diagnostic groups were mapped.

Fixes <rdar://problem/12044436>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
e8cf7d143446c45568bb7c9a6fbd8f32ca6ae93e 07-Jul-2012 Ted Kremenek <kremenek@apple.com> Re-apply r159875 with fixes.

- Split pedantic driver flag test into separate test file, and XFAIL on cygwin,mingw32
- Fix bug in tablegen logic where a missing '{' caused errors to be included in -Wpedantic.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
3b4c53259603ba389373362f476648b2b1ab9eca 07-Jul-2012 NAKAMURA Takumi <geek4civic@gmail.com> Revert rr159875, "Implement -Wpedantic and --no-pedantic to complement -Weverything." It broke several builds.

I suspect FileCheck might match assertion failure, even if clang/test/Misc/warning-flags.c passed the test.

> 0. Program arguments: bin/./clang -### -pedantic -Wpedantic clang/test/Driver/warning-options.cpp

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
25570a94ca6b706d19812b0f8df25a63ec3445c8 07-Jul-2012 Ted Kremenek <kremenek@apple.com> Implement -Wpedantic and --no-pedantic to complement -Weverything.

This patch introduces some magic in tablegen to create a "Pedantic" diagnostic
group which automagically includes all warnings that are extensions. This
allows a user to suppress specific warnings traditionally under -pedantic used
an ordinary warning flag. This also allows users to use #pragma to silence
specific -pedantic warnings, or promote them to errors, within blocks of text
(just like any other warning).

-Wpedantic is NOT an alias for -pedantic. Instead, it provides another way
to (a) activate -pedantic warnings and (b) disable them. Where they differ
is that -pedantic changes the behavior of the preprocessor slightly, whereas
-Wpedantic does not (it just turns on the warnings).

The magic in the tablegen diagnostic emitter has to do with computing the minimal
set of diagnostic groups and diagnostics that should go into -Wpedantic, as those
diagnostics that already members of groups that themselves are (transitively) members
of -Wpedantic do not need to be included in the Pedantic group directly. I went
back and forth on whether or not to magically generate this group, and the invariant
was that we always wanted extension warnings to be included in -Wpedantic "some how",
but the bookkeeping would be very onerous to manage by hand.

-no-pedantic (and --no-pedantic) is included for completeness, and matches many of the
same kind of flags the compiler already supports. It does what it says: cancels out
-pedantic. One discrepancy is that if one specifies --no-pedantic and -Weverything or
-Wpedantic the pedantic warnings are still enabled (essentially the -W flags win). We
can debate the correct behavior here.

Along the way, this patch nukes some code in TextDiagnosticPrinter.cpp and CXStoredDiagnostic.cpp
that determine whether to include the "-pedantic" flag in the warning output. This is
no longer needed, as all extensions now have a -W flag.

This patch also significantly reduces the number of warnings not under flags from 229
to 158 (all extension warnings). That's a 31% reduction.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159875 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
3cc509b5ac0e99ef44c1bf8b57cd403b546abc3d 13-Jun-2012 Jakob Stoklund Olesen <stoklund@2pi.dk> Make clang-tblgen backends functions instead of TableGenBackends.

Get rid of a bunch of header files. TableGen output should be unaffected.

Patch by Sean Silva!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
46484770fe264fba24f7a9f608a3b7c3342690aa 04-May-2012 Richard Smith <richard-llvm@metafoo.co.uk> Remove DiagGroups from notes, and add a TableGen assertion to catch them.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
d42236e9d5aa8881bee103d923475daffc791f38 06-Mar-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> [tablegen] Make sure that the code that is determining the order of warning groups
is shared to avoid any "misalignment" if indices.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
d49cb20288b2dbc222aaf5673c1a4738c151b7bf 15-Feb-2012 Benjamin Kramer <benny.kra@googlemail.com> Store the warning option corresponding to a diagnostics as an index into the option table instead of storing the name.

Another 8 bytes + relocation removed from every diagnostic on x86_64.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150615 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
36d592718ff342f762e32cbde73d1113f88cb275 13-Feb-2012 Dylan Noblesmith <nobled@dreamwidth.org> drop more llvm:: prefixes on SmallString<>

More cleanup after r149799.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
f94d392847fb183b3012dbcb2e372b586c80b9fb 09-Feb-2012 Benjamin Kramer <benny.kra@googlemail.com> Kill the brief and full explanation fields from StaticDiagInfoRec. They were unused and wasted space for nothing.

- per PR11952.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150199 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
0b536f328121d5bf8bdf7e98887410cde131ac39 07-Jan-2012 Benjamin Kramer <benny.kra@googlemail.com> Remove unused include of VectorExtras.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
037ad1b8f00b80aa76e73e3118133e9a59fd177e 15-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Validate DiagGroup names in TableGen, they're used as command line arguments so we don't want shell meta chars in there.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144645 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
90c7892b699c5405a81bcc339432ba2f4b50e0d6 06-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Use StringRef's case transformation methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
51d7777a21b9706d503496c650af06f80d278c1a 06-Oct-2011 Peter Collingbourne <peter@pcc.me.uk> Add the Clang tblgen backends to Clang, and flip the switch to cause
the build systems to use clang-tblgen.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp