llvm-project/clang/test/Parser
Benjamin Kramer 1adc8c3391 Print detailed vector type information on diagnostics.
We never aka vector types because our attributed syntax for it is less
comprehensible than the typedefs. This leaves the user in the dark when
the typedef isn't named that well.

Example:
  v2s v; v4f w;
  w = v;

The naming in this cases isn't even that bad, but the error we give is
useless without looking up the actual typedefs.
t.c:6:5: error: assigning to 'v4f' from incompatible type 'v2s'

Now:
t.c:6:5: error: assigning to 'v4f' (vector of 4 'float' values) from
    incompatible type 'v2s' (vector of 2 'int' values)

We do this for all diagnostics that print a vector type.

llvm-svn: 207267
2014-04-25 20:41:38 +00:00
..
CompoundStmtScope.c
DelayedTemplateParsing.cpp Fix crash if delayed template parsing meets an erroneous trailing return type. 2014-03-12 23:14:33 +00:00
MicrosoftExtensions.c Fixing a typo, updating the diagnostic wording and logic based on post-commit review feedback. Amends r206186. 2014-04-15 00:36:39 +00:00
MicrosoftExtensions.cpp Implement the MS extension __identifier properly: take a token and strip it of 2014-03-15 00:06:08 +00:00
PR11000.cpp Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
access-spec-attrs.cpp Allow for annotate attributes after access specifiers. When such 2011-10-13 09:41:32 +00:00
altivec-csk-bool.c Move a bunch of tests to directly use the CC1 layer. This at least saves 2014-01-15 09:08:07 +00:00
altivec.c Print detailed vector type information on diagnostics. 2014-04-25 20:41:38 +00:00
argument_qualified.c
argument_redef.c
argument_scope.c
arm-windows-calling-convention-handling.c Driver: add target definition for Windows on ARM 2014-04-04 20:31:19 +00:00
asm-constraints-pr7869.c
asm.c Parse: Avoid crashing on unterminated top-level asm strings 2013-12-10 21:29:48 +00:00
asm.cpp User-defined literals: reject string and character UDLs in all places where the 2012-03-06 03:21:47 +00:00
atomic.c Support C11 _Atomic type qualifier. This is more-or-less just syntactic sugar for the _Atomic type specifier. 2013-03-28 01:55:44 +00:00
attr-availability.c As Aaron pointed out it's simpler to reject wide string availability attr messages in the parser. 2013-09-13 17:31:48 +00:00
attributes.c Properly diagnose standard C++ attributes which have optional argument lists when the arguments are elided. eg) 2014-04-14 16:03:22 +00:00
attributes.mm Revert "Don't require -re suffix on -verify directives with regexes." 2013-12-14 01:07:05 +00:00
backtrack-crash.cpp
bad-control.c Fix to PR8880 (clang dies processing a for loop) 2014-01-23 15:05:00 +00:00
block-block-storageclass.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
block-pointer-decl.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
bracket-crash.cpp PR14549. Don't assert if we see an incomplete decltype specifier at the end of the file. 2012-12-09 04:17:57 +00:00
builtin_classify_type.c Replace "can not" with "cannot" in diagnostics messages. 2014-03-07 22:36:23 +00:00
builtin_types_compatible.c
c-namespace.c
c1x-alignas.c Implement C++11 [dcl.align]p1 and C11 6.7.5/2 rules for alignas and _Alignas. 2013-01-29 09:02:09 +00:00
c1x-generic-selection.c C1X: implement generic selections 2011-04-15 00:35:48 +00:00
c11-noreturn.c Add missing diagnostic for a nested-name-specifier on a free-standing type definition. Bump some related diagnostics from warning to extension in C++, since they're errors there. Add some missing checks for function specifiers on non-function declarations. 2013-03-18 22:52:47 +00:00
captured-statements.c Parser support for #pragma clang __debug captured 2013-04-16 18:41:26 +00:00
char-literal-printing.c Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
check-objc2-syntax-1.m [Parser] Remove "add -fmodules" from the "use of '@import' when modules are disabled, add -fmodules" error. 2014-04-17 02:32:52 +00:00
check-syntax-1.m Modify how the -verify flag works. Currently, the verification string and 2011-12-15 00:38:15 +00:00
check_cast.c
colon-colon-parentheses.cpp Fix test cases I broken when fixing grammar in diagnostic message. 2012-11-02 21:41:42 +00:00
completely-empty-header-file.h Add pedantic warning -Wempty-translation-unit (C11 6.9p1). 2012-06-06 17:25:21 +00:00
compound_literal.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
control-scope.c
crash-report.c Use the new --crash option in commands that are expected to crash. 2013-07-05 02:53:30 +00:00
cuda-kernel-call.cu Extend the error recovery for a template-argument-list terminated by '>>' to 2012-06-18 06:11:04 +00:00
cxx-altivec.cpp Print detailed vector type information on diagnostics. 2014-04-25 20:41:38 +00:00
cxx-ambig-decl-expr-xfail.cpp
cxx-ambig-decl-expr.cpp When disambiguating an expression-statement from a declaraton-statement, if the 2012-08-23 20:19:14 +00:00
cxx-ambig-init-templ.cpp Modify the uninitialized field visitor to detect uninitialized use across the 2013-09-20 03:03:06 +00:00
cxx-ambig-paren-expr.cpp
cxx-attributes.cpp Factor out custom parsing for iboutletcollection and vec_type_hint attributes 2013-10-31 01:56:18 +00:00
cxx-bool.cpp
cxx-casting.cpp Add quotation marks to template names in diagnostics. 2013-03-05 06:21:38 +00:00
cxx-class-template-specialization.cpp Fix for PR 16367, display the name of a function in a diagnostic instead of 2013-06-19 22:25:01 +00:00
cxx-class.cpp Improve diagnostics for malformed constructor declarations (where lookup for 2014-03-03 21:12:53 +00:00
cxx-condition.cpp Accept braced-init-lists in conditions, and, in passing, dramatically improve 2012-02-22 06:49:09 +00:00
cxx-decl.cpp Replace "can not" with "cannot" in diagnostics messages. 2014-03-07 22:36:23 +00:00
cxx-default-args.cpp PR13657 (and duplicates): 2013-09-12 23:28:08 +00:00
cxx-default-delete.cpp Drive-by fix of incorrect diagnostic, and a test case for said diagnostic. The double error is unfortunate, but I really don't see an alternative whose effort is worth it. 2012-02-11 23:51:21 +00:00
cxx-ext-delete-default.cpp Change the diagnostics which said 'accepted as an extension' to instead say 2011-12-29 21:57:33 +00:00
cxx-extern-c-array.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
cxx-extra-semi.cpp Add diagnostics for comma at end of enum and for extra semicolon at namespace 2012-07-23 05:45:25 +00:00
cxx-friend.cpp Sema: Implement DR317 2014-03-30 06:44:54 +00:00
cxx-in-c.c
cxx-member-crash.cpp Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
cxx-member-init-missing-paren-crash.cpp Fix a crash-on-invalid. 2011-09-23 22:39:23 +00:00
cxx-member-initializers.cpp PR16480: Reimplement token-caching for constructor initializer lists. This 2013-07-04 00:13:48 +00:00
cxx-namespace-alias.cpp
cxx-reference.cpp PR13110: Add a -Wignored-qualifiers warning when ignoring a const, volatile, or 2014-02-19 00:13:27 +00:00
cxx-stmt.cpp If a comma operator is followed by a token which unambiguously indicates the 2012-09-18 00:52:05 +00:00
cxx-template-argument.cpp Fix PR17637: incorrect calculation of template parameter depth 2013-12-04 03:51:14 +00:00
cxx-template-decl.cpp Fix PR17637: incorrect calculation of template parameter depth 2013-12-04 03:51:14 +00:00
cxx-throw.cpp Push the knowledge that we are parsing a type-id/type-name further into the 2012-05-09 20:55:26 +00:00
cxx-typeid.cpp Modify how the -verify flag works. Currently, the verification string and 2011-12-15 00:38:15 +00:00
cxx-typeof.cpp Improve diagnostics for invalid use of non-static members / this: 2012-04-05 01:13:04 +00:00
cxx-undeclared-identifier.cpp In C++, if we hit an error in the class-head, don't try to parse the class body. 2012-12-05 11:34:06 +00:00
cxx-using-declaration.cpp Replace "can not" with "cannot" in diagnostics messages. 2014-03-07 22:36:23 +00:00
cxx-using-directive.cpp Allow CorrectTypo to replace CXXScopeSpecifiers that refer to classes. 2013-10-19 00:05:00 +00:00
cxx-variadic-func.cpp
cxx0x-ambig.cpp Recover from errors in enum definition 2013-12-31 06:26:03 +00:00
cxx0x-attributes.cpp Fixing a typo, updating the diagnostic wording and logic based on post-commit review feedback. Amends r206186. 2014-04-15 00:36:39 +00:00
cxx0x-condition.cpp Cleaning up the self initialization checker. 2012-10-01 17:39:51 +00:00
cxx0x-decl.cpp Allow virt-specifiers after GNU attributes in member-declarators. GCC doesn't 2014-01-24 22:34:35 +00:00
cxx0x-for-range.cpp PR11297: Provide a better diagnostic for code which contains a 2011-12-20 22:56:20 +00:00
cxx0x-in-cxx98.cpp PR17567: Improve diagnostic for a mistyped constructor name. If we see something 2013-10-15 00:00:26 +00:00
cxx0x-lambda-expressions.cpp PR19339: Disambiguate lambdas with init-captures from designated initializers 2014-04-13 04:31:48 +00:00
cxx0x-literal-operators.cpp Implement C++11 [lex.ext]p10 for string and character literals: a ud-suffix not 2012-03-08 02:39:21 +00:00
cxx0x-member-initializers.cpp PR13657 (and duplicates): 2013-09-12 23:28:08 +00:00
cxx0x-override-control-keywords.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
cxx0x-rvalue-reference.cpp PR13110: Add a -Wignored-qualifiers warning when ignoring a const, volatile, or 2014-02-19 00:13:27 +00:00
cxx11-base-spec-attributes.cpp PR15300: Support C++11 attributes on base-specifiers. We don't support any such 2013-02-19 23:47:15 +00:00
cxx11-brace-initializers.cpp PR14918: Don't confuse braced-init-lists after template variable declarations 2013-01-15 06:49:38 +00:00
cxx11-stmt-attributes.cpp Diagnose C++11 attributes before fp_contract pragmas. 2013-11-15 21:10:54 +00:00
cxx11-type-specifier.cpp Replace "can not" with "cannot" in diagnostics messages. 2014-03-07 22:36:23 +00:00
cxx11-user-defined-literals.cpp PR18870: Parse language linkage specifiers properly if the string-literal is 2014-02-17 23:25:27 +00:00
declarators.c Fix bungled parse recovery in K&R function declarations 2014-01-05 03:27:57 +00:00
designator.c
diag-crash.c Fix crash when both ExpectAndConsume and ConsumeAnyToken emit diagnostics 2014-02-23 03:45:03 +00:00
empty-translation-unit.c Our style for diagnostic messages is to not include a trailing dot. 2012-11-05 05:32:00 +00:00
encode.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
enhanced-proto-1.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
expressions.c Make wording for certain invalid unary expressions more consistent. 2013-10-09 00:22:23 +00:00
expressions.m
extension.c
for.cpp
function-decls.c
goto.c
if-scope-c90.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
if-scope-c99.c
implicit-casts.c
knr_parameter_attributes.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
method-def-in-class.m In Parser::SkipUntil do not stop at '@' unconditionally. 2011-12-17 04:13:22 +00:00
method-prototype-1.m
missing-closing-rbrace.m Do the error recovery for @end only. 2013-03-20 18:45:49 +00:00
missing-end-2.m Extend warnings for missing '@end'. 2011-12-06 09:25:23 +00:00
missing-end-3.m Extend warnings for missing '@end'. 2011-12-06 09:25:23 +00:00
missing-end-4.m Revert my patch in r191155 to allow forward 2013-09-24 17:03:07 +00:00
missing-end.m Extend warnings for missing '@end'. 2011-12-06 09:25:23 +00:00
missing-selector-name.mm objective-c parsing. Don't crash when selector name 2012-07-26 17:32:28 +00:00
ms-inline-asm.c Re-enable ms inline asm parser test. 2013-12-08 21:12:27 +00:00
namelookup-bug-1.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
namelookup-bug-2.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
namespace-alias-attr.cpp Replace "can not" with "cannot" in diagnostics messages. 2014-03-07 22:36:23 +00:00
namespaces.cpp Fix crash on missing namespace name in namespace alias definition -- PR14085. 2012-10-27 23:44:27 +00:00
nested-namespaces-recovery.cpp Add a fix-it and better error recovery for improperly nested namespaces. This will give a better error message for cases such as "namespace foo::bar::baz {}" and a suggested fix-it of "namespace foo { namespace bar { namespace baz {} } }" 2011-05-26 20:11:09 +00:00
objc-alias-printing.m
objc-boxing.m Objective-C parsing [qoi]: Provide good recovery when 2013-04-18 19:37:43 +00:00
objc-category-neg-1.m Modify how the -verify flag works. Currently, the verification string and 2011-12-15 00:38:15 +00:00
objc-diag-width.mm Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
objc-error-qualified-implementation.m Replace "can not" with "cannot" in diagnostics messages. 2014-03-07 22:36:23 +00:00
objc-forcollection-1.m
objc-forcollection-neg-2.m Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
objc-forcollection-neg.m objective-c: improve diagnostic when collection expression is 2012-06-22 15:37:00 +00:00
objc-foreach-syntax.m Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
objc-init.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc-interfaces.m
objc-messaging-1.m
objc-messaging-neg-1.m Parsing of C++0x lambda expressions, from John Freeman with help from 2011-08-04 15:30:47 +00:00
objc-missing-impl.m Extend warnings for missing '@end'. 2011-12-06 09:25:23 +00:00
objc-property-syntax.m Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
objc-quirks.m Improve diagnostics for dangling '}'. 2012-01-17 01:04:27 +00:00
objc-recover.mm Better parser recovery in Objective-C containers. 2012-07-09 16:54:53 +00:00
objc-synthesized-recover.m Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
objc-try-catch-1.m
objc-type-printing.m
objcbridge-related-attribute.m ObjectiveC - Introducing objc_bridge_related attribute 2013-12-04 20:32:50 +00:00
objcxx-at.mm
objcxx-lambda-expressions-neg.mm Fix tests for r150123 2012-02-09 01:02:27 +00:00
objcxx0x-lambda-expressions.mm Add compat/extension warnings for init captures. 2013-09-28 05:38:27 +00:00
objcxx11-attributes.mm Adding the Subjects entry back for the noreturn attributes. This caused some test cases to be updated because the original diagnostic was about applying to methods as well as functions, but the semantic checking disallowed methods. 2013-11-27 18:53:58 +00:00
objcxx11-initialized-temps.mm Objective-C++: Enable passing of modern C++11 style 2013-04-18 23:43:21 +00:00
objcxx11-protocol-in-template.mm Don't require a space between the two ">" in "vector<id<protocol>>" in objc++11. 2012-12-14 18:22:38 +00:00
objcxx11-user-defined-literal.mm User-defined literals: reject string and character UDLs in all places where the 2012-03-06 03:21:47 +00:00
offsetof.c
opencl-astype.cl Print detailed vector type information on diagnostics. 2014-04-25 20:41:38 +00:00
opencl-image-access.cl Re-commit r170428 changes with Linux style file endings. 2012-12-18 14:38:23 +00:00
opencl-kernel.cl Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
opencl-keywords.cl Fix a typo in r204164 that made *all* keywords available in OpenCL mode. 2014-03-18 22:43:19 +00:00
opencl-pragma.cl Add pedantic warning -Wempty-translation-unit (C11 6.9p1). 2012-06-06 17:25:21 +00:00
opencl-storage-class.cl OpenCL: add a non-standard extension, cl_clang_storage_class_specifiers, 2011-10-06 03:01:00 +00:00
parenthesis-balance.cpp For code such as: 2011-07-01 20:54:02 +00:00
parmvardecl_conversion.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
parser_overflow.c Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
placeholder-recovery.m Fix warning text of my last patch. 2013-02-28 23:16:39 +00:00
pointer-arithmetic.c
pointer_promotion.c
pragma-fp-contract.c Fix bogus diagnostic wording. There's no such thing as a compound expression. 2013-11-15 21:08:45 +00:00
pragma-options.c [Parser] Handle #pragma pack/align inside C structs. 2013-04-18 01:42:35 +00:00
pragma-options.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
pragma-pack.c [Parser] Handle #pragma pack/align inside C structs. 2013-04-18 01:42:35 +00:00
pragma-visibility.c
pragma-visibility2.c PR10392: "#pragma GCC visibility" must not expand macros in its 2011-07-20 01:03:50 +00:00
pragma-weak.c Fix a parser crash when there are #pragmas in a context which requires a single 2013-10-28 22:04:30 +00:00
promote_types_in_proto.c
recovery.c improve error recovery for extra ')'s after a if/switch/while condition. Before: 2012-04-28 16:24:20 +00:00
recovery.cpp Improve error recovery around colon. 2014-04-13 16:52:03 +00:00
recovery.m
recursion-limits.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
selector-1.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
skip-function-bodies.mm Added a flag to the parser to skip method bodies. 2012-04-12 10:11:59 +00:00
statements.c If a comma operator is followed by a token which unambiguously indicates the 2012-09-18 00:52:05 +00:00
struct-recursion.c
switch-recovery.cpp Allow CorrectTypo to replace CXXScopeSpecifiers that refer to classes. 2013-10-19 00:05:00 +00:00
top-level-semi-cxx0x.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
traditional_arg_scope.c
typeof.c
types.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
warn-dangling-else.cpp Add -Wdangling-else. 2011-12-22 23:26:17 +00:00
warn-semicolon-before-method-body.m Fix a tranche of comment, test and doc typos 2013-12-05 16:25:25 +00:00