aboutsummaryrefslogtreecommitdiff
path: root/test/Misc
AgeCommit message (Collapse)Author
2012-01-15Pedantic diagnostic correction: in C++, we have integral constant expressions,Richard Smith
not integer constant expressions. In passing, fix the 'folding is an extension' diagnostic to not claim we're accepting the code, since that's not true in -pedantic-errors mode, and add this diagnostic to -Wgnu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148209 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-13Revert r148138; it's causing test failures.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148141 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-13rename -ccc-host-triple into -targetSebastian Pop
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148138 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-05PR10828: Produce a warning when a no-arguments function is declared in blockRichard Smith
scope, when no other indication is provided that the user intended to declare a function rather than a variable. Remove some false positives from the existing 'parentheses disambiguated as a function' warning by suppressing it when the declaration is marked as 'typedef' or 'extern'. Add a new warning group -Wvexing-parse containing both of these warnings. The new warning is enabled by default; despite a number of false positives (and one bug) in clang's test-suite, I have only found genuine bugs with it when running it over a significant quantity of real C++ code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147599 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-29Change the diagnostics which said 'accepted as an extension' to instead sayRichard Smith
'is an extension'. The former is inappropriate and confusing when building with -Werror/-pedantic-errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147357 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-20Let the KNR promotion warning be disabled.Roman Divacky
Patch by Dimitry Andric! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146982 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-17Refactor SerializeDiagnosticsPrinter to using DiagnosticRenderer. This ↵Ted Kremenek
gives us comparative diagnostics to TextDiagnosticPrinter. This certainly can be cleaned up a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146820 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-16Add a warning flag for ext_embedded_directive. gcc considers this undefinedRichard Smith
behaviour to be an error, so it's useful to be able to make it an error in clang too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146755 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-15Modify how the -verify flag works. Currently, the verification string andRichard Trieu
diagnostic message are compared. If either is a substring of the other, then no error is given. This gives rise to an unexpected case: // expect-error{{candidate function has different number of parameters}} will match the following error messages from Clang: candidate function has different number of parameters (expected 1 but has 2) candidate function has different number of parameters It will also match these other error messages: candidate function function has different number of parameters number of parameters This patch will change so that the verification string must be a substring of the diagnostic message before accepting. Also, all the failing tests from this change have been corrected. Some stats from this cleanup: 87 - removed extra spaces around verification strings 70 - wording updates to diagnostics 40 - extra leading or trailing characters (typos, unmatched parens or quotes) 35 - diagnostic level was included (error:, warning:, or note:) 18 - flag name put in the warning (-Wprotocol) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146619 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-07Make changes to SDiagsWriter to make it work in combination with the ARC ↵Argyrios Kyrtzidis
migrator: -Allow it to be used with multiple BeginSourceFile/EndSourceFile calls; for this introduce a "finish" callback method in the DiagnosticConsumer. SDiagsWriter finishes up the serialization file inside this method. -Make it independent of any particular DiagnosticsEngine; make it use the SourceManager of the Diagnostic object. -Ignore null source ranges. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146020 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-07Tweak serialized diagnostics to support errors with no categories. Fixes ↵Ted Kremenek
<rdar://problem/10538300>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146011 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-06Suggest typo corrections for implicit function declarations.Hans Wennborg
A mistyped function call becomes an inmplicit function declaration in C. Suggest typo correction when one can be found. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145930 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-29Place "use @dynamic or provide a method implementation" warnings under a -W ↵Ted Kremenek
flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145418 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-29Fix serialized diagnostics to handle FixIts that only remove text. Fixes ↵Ted Kremenek
<rdar://problem/10473903>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145339 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-15Remove one group'ed warning.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144678 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-14Change the checks in the type aka printing. A confusing case where the stringRichard Trieu
of the first type is the same as the aka string of the second type, but both types are different. Update the logic to print an aka for the first type to show that they are different. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144558 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-13Fix the signature of the getcontext builtin. Patch by Dimitry Andric.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144505 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-11libclang/CXLoadedDiagnostic.cpp: Work around not to miss the string ↵NAKAMURA Takumi
terminator on fixit. FixIts might be exposed as C string via clang_getCString(), though the zero terminator is not allocated in CXLoadedDiagnosticSetImpl::makeString. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144379 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-11test/Misc/serialized-diags.c: Tweak FileCheck expressions to be tolerant to ↵NAKAMURA Takumi
DOSish output. FIXME: For now, " = 0Parse Issueexpected ';' after expression{{XXX}}" would not be matched due to unexpected garbage{{XXX} on some hosts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144374 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-11Place 'argument unused during compilation' under a -W flag. Fixes ↵Ted Kremenek
<rdar://problem/10403653>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144365 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-11[serialized diagnostics]: add test cases for serialized diagnostics, ↵Ted Kremenek
including a test case for no issues, multiple issues, and a single issue. Along the way, tweak c-index-test -read-diagnostics output so it is easier to tell what diagnostics are child diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144349 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-09Put ext_offsetof_extended_field_designator under the warning flagDouglas Gregor
-Wextended-offsetof, from Jeff Walden! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144160 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-07Remove test with int128 printing since it breaks on some platforms.Richard Trieu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143997 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-07Add support for printing integer literals of type short, unsigned short,Richard Trieu
__int128_t and __uint128_t. Short and unsigned short integer literals support is only to work around a crasher as reported in PR11179 and will be removed once Clang no longer builds short integer literals. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143977 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-24Switch to a more natural formatting of the macro name printing.Chandler Carruth
Suggested by John McCall. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142836 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-17Move about 20 random diagnostics under -W flags. Patch by Ahmed Charles!Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142284 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Add a testcase for r142121 based on an idea from Richard Smith. Thanks!Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142160 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Remove the leftover partial comment.David Blaikie
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142138 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16I fixed this with r142127; these notes now make sense even w/o the caret.Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142129 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Now that macro expansion notes are real notes and go through the sameChandler Carruth
formatting as any other diagnostic, they will be properly line wrapped and otherwise pretty printed. Let's take advantage of that and the new factoring to add some helpful information to them (much like template backtrace notes and other notes): the name of the macro whose expansion is being noted. This makes a world of difference if caret diagnostics are disabled, making the expansion notes actually useful in this case. It also helps ensure that in edge cases the information the user needs is present. Consider: % nl -ba t5.cc 1 #define M(x, y, z) \ 2 y 3 4 M( 5 1, 6 2, 7 3); We now produce: % ./bin/clang -fsyntax-only t5.cc t5.cc:6:3: error: expected unqualified-id 2, ^ t5.cc:2:3: note: expanded from macro: M y ^ 1 error generated. Without the added information in the note, the name of the macro being expanded would never be shown. This also deletes a FIXME to use the diagnostic formatting. It's not yet clear to me that we *can* do this reasonably, and the production of this message was my primary goal here anyways. I'd love any comments or suggestions on improving these notes, their wording, etc. Currently, I need to make them provide more helpful information in the presence of a token-pasting buffer, and I'm pondering adding something along the lines of "expanded from argument N of macro: ...". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142127 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Now that the structure of this is more reasonably laid out, fix a longChandler Carruth
standing deficiency: we were providing no macro backtrace information whenever caret diagnostics were turned off. This sinks the logic for suppressing the code snippet and caret to the code that actually prints tho code snippet and caret. Along the way, clean up the naming of functions, remove some now fixed FIXMEs, and generally improve the wording and logic of this process. Add a test case exerecising this functionality. It is notable that the resulting messages are extremely low quality. I'm working on a follow-up patch that should address this and have left a FIXME in the test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142120 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Add a prefix to the existing test to prepare for more tests of otherChandler Carruth
backtrace behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142119 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Fold two run lines into a single logical one, and move them down belowChandler Carruth
the important code in this test to make the test more stable. Now adding further tests won't shift the line numbers occuring in the diagnostic output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142118 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-16Rename this test to a more general name in preparation for adding moreChandler Carruth
tests to it to cover more of the macro bactrace functionality. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142116 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-14Add flags for the remaining shift related warningsJoerg Sonnenberger
(-Wshift-count-negative, -Wshift-count-overflow). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141962 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-13Update all tests other than Driver/std.cpp to use -std=c++11 rather thanRichard Smith
-std=c++0x. Patch by Ahmed Charles! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141900 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-11Place diagnostic group ext_typecheck_decl_incomplete_type under a -W flag.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141620 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-06Add -Wlanguage-extension-token option for ext_token_used warning.Ivan Krasin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141268 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-04Place diagnostic warn_atomic_property_rule under a -W flag. Fixes ↵Ted Kremenek
<rdar://problem/10230631>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141089 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-04Place diagnostic warn_ownin_getter_rule under a -W flag. Fixes ↵Ted Kremenek
<rdar://problem/10230626>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141088 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-04Place diagnostic ext_predef_outside_function under a -W flag. Fixes ↵Ted Kremenek
<rdar://problem/10226192>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141087 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-04Revert r141060. We should NEVER add new warnings that aren't guarded by flag.Ted Kremenek
This reverts commit 5383d065241b18e84232bc50d81523f2058ea62b. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141077 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-04Update testcase for r141053+r141055.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141060 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-03Fixed exapnsion range for # and ##.Abramo Bagnara
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141012 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-29Add a warning group for warnings about using C1X features as extensionsPeter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140795 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-26Add back support for a manually formatted section of the diagnosticChandler Carruth
message. Specifically, we now only line-wrap the first line of te diagnostic message and assume the remainder is manually formatted. While adding it back, simplify the logic for doing this. Finally, add a test that ensures we actually preserve this feature. =D *Now* its not dead code. Thanks to Doug for the test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140538 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-26Add a test for the display of diagnostic options and categories. ThisChandler Carruth
would have caught a bug I introduced during refactoring. Silly me thinking this was all well tested already... If any of this is already covered by other tests, let me know. I looked around and didn't see any. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140522 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-23Add DiagGroups to a couple of warnings.Matt Beaumont-Gay
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140411 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-22Place diagnostic warn_ivar_use_hidden under the flag -Wshadow-ivar.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140329 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-04PR10458: Finesse behaviour of C++0x features when in pre-0x mode. Accept ↵Richard Smith
for-range and auto with an ExtWarn, and produce a -Wc++0x-compat warning in C++98 mode when auto is used as a storage class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139102 91177308-0d34-0410-b5e6-96231b3b80d8