llvm-project/clang/test/SemaCXX
Francois Pichet efb1af9ae8 Emulate a MSVC bug where if during an using declaration name lookup, the declaration found is unaccessible (private) and that declaration was bring into scope via another using declaration whose target declaration is accessible (public) then no error is generated.
Example:
class A { public: int f();  };
class B : public A { private: using A::f; };
class C : public B { private: using B::f; };

Here, B::f is private so this should fail in Standard C++, but because B::f refers to A::f which is public MSVC accepts it.

This fixes 1 error when parsing MFC code with clang.

llvm-svn: 131896
2011-05-23 03:43:44 +00:00
..
Inputs Work around an annoying, non-standard optimization in the glibc 2010-02-12 07:32:17 +00:00
MicrosoftExtensions.cpp Emulate a MSVC bug where if during an using declaration name lookup, the declaration found is unaccessible (private) and that declaration was bring into scope via another using declaration whose target declaration is accessible (public) then no error is generated. 2011-05-23 03:43:44 +00:00
PR5086-ambig-resolution-enum.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
PR6562.cpp Fix PR6562. If a type is dependent, we don't know if it will have implicit 2010-03-13 18:12:56 +00:00
PR6618.cpp Fix PR6618. 2010-03-21 22:56:43 +00:00
PR7944.cpp Clean up the error recovery at the bottom of Sema::LookupMemberExpr. This 2011-02-22 23:52:53 +00:00
PR8012.cpp Provide an error when a non-identifier name (such as an operator) is used as a 2010-11-03 01:07:06 +00:00
PR8755.cpp Enhance the diagnostic for referring to a typedef with an elaborated name to be 2011-01-24 19:01:04 +00:00
PR8884.cpp Fix PR8884 by skipping transparent contexts. The test is for LikageSpec. I 2011-01-20 02:26:24 +00:00
PR9459.cpp Extend Sema::ClassifyName() to support C++, ironing out a few issues 2011-04-27 04:48:22 +00:00
PR9460.cpp Diagnose attempts to implicitly instantiate a template before it is 2011-04-27 06:46:31 +00:00
PR9461.cpp Diagnose attempts to implicitly instantiate a template before it is 2011-04-27 06:46:31 +00:00
PR9572.cpp Fix PR9572 and neighboring lurking crashers. 2011-03-28 01:39:13 +00:00
PR9884.cpp Add test for PR9884. 2011-05-10 14:19:13 +00:00
PR9902.cpp Fix PR9902: correctly substitute alias templates within the template in which they are defined: provide an empty list of arguments for each containing template context during substitution. 2011-05-12 00:06:17 +00:00
PR9908.cpp PR9908: Fix the broken fix for PR9902 to get the template argument lists in the right order. 2011-05-14 15:04:18 +00:00
__null.cpp Initial steps to improve diagnostics when there is a NULL and 2011-02-18 23:54:50 +00:00
__try.cpp Parsing/AST support for Structured Exception Handling 2011-04-28 01:08:34 +00:00
abstract.cpp When checking for abstract types, don't crash when we have a 2011-02-22 23:21:06 +00:00
access-base-class.cpp When we complain about a member being inaccessible due to a constraint 2010-05-28 04:34:55 +00:00
access-control-check.cpp Turn access control on by default in -cc1. 2010-04-09 19:03:51 +00:00
access-member-pointer.cpp Fix for PR7694: make sure to pass in a RecordType to CheckBaseClassAccess; 2010-07-23 19:25:41 +00:00
access.cpp Set a member's access specifier even if it doesn't match the previous specifier. 2009-12-23 00:37:40 +00:00
addr-of-overloaded-function-casting.cpp Handle the resolution of a reference to a function template (which 2011-02-19 21:32:49 +00:00
addr-of-overloaded-function.cpp Make yet another placeholder type, this one marking that an expression is a bound 2011-04-26 20:42:42 +00:00
address-of-temporary.cpp Follow through references to catch returned stack addresses, local blocks, label addresses or references to temporaries, e.g: 2010-11-30 22:57:32 +00:00
address-of.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
address-space-conversion.cpp Implement appropriate semantics for C++ casting and conversion when 2011-04-15 17:59:54 +00:00
address-space-newdelete.cpp Forbid the use of C++ new/delete to allocate/free objects within an 2011-04-15 19:46:20 +00:00
address-space-references.cpp When determining whether two types are reference-compatible, check 2011-04-28 17:56:11 +00:00
aggregate-initialization.cpp Clean up trivial default constructors now. 2011-05-09 21:45:35 +00:00
alias-template.cpp Implement support for C++0x alias templates. 2011-05-05 21:57:07 +00:00
alignof-sizeof-reference.cpp Clean up our handling of template-ids that resolve down to a single 2011-03-16 19:16:25 +00:00
altivec.cpp makes vec_step operator work when AltiVec support is enabled 2011-03-19 07:53:43 +00:00
ambig-user-defined-conversions.cpp Sema::BuildCXXMemberCallExpr() can fail due to access or ambiguities, 2011-01-20 00:18:04 +00:00
ambiguous-builtin-unary-operator.cpp make clang print types as "const int *" instead of "int const*", 2010-09-05 00:04:01 +00:00
anonymous-struct.cpp Emit diagnostic error when the field of an anonymous struct is non trivial. 2010-08-16 17:27:08 +00:00
anonymous-union.cpp Ignore const/volatile/restrict qualifiers on anonymous structs and 2011-05-09 23:05:33 +00:00
array-bound-merge.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
array-bounds.cpp Teach CFGBuilder that the 'default' branch of a switch statement is dead if all enum values in a switch conditioned are handled. 2011-03-16 04:32:01 +00:00
arrow-operator.cpp Fix infinite loop during error diagnostics. Fixes rdar://8875304. 2011-01-25 23:16:36 +00:00
attr-after-definition.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
attr-cxx0x.cpp Implement support for C++0x alias templates. 2011-05-05 21:57:07 +00:00
attr-deprecated.cpp Parse attributes on enumerators and instantiate attributes on enum decls. 2010-10-22 23:36:17 +00:00
attr-format.cpp Fix PR8625 and correctly interpret member-calls to static members when 2010-11-16 08:49:43 +00:00
attr-nonnull.cpp Apply the nonnull attribute to constructor expressions too. 2011-03-25 01:44:32 +00:00
attr-noreturn.cpp Teach CFG building how to deal with CXXMemberCallExprs and BoundMemberTy, 2011-05-11 07:19:11 +00:00
attr-regparm.cpp Merge the "regparm" attribute from a previous declaration of a 2010-06-18 21:30:25 +00:00
attr-sentinel.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
attr-unavailable.cpp Implement a new 'availability' attribute, that allows one to specify 2011-03-23 00:50:03 +00:00
attr-weak.cpp When checking the 'weak' and 'weakref' attributes, look for non-external 2011-02-08 22:35:49 +00:00
attr-weakref.cpp When checking the 'weak' and 'weakref' attributes, look for non-external 2011-02-08 22:35:49 +00:00
auto-cxx0x.cpp Provide Fixit warning when 'auto' is intended as storage 2011-02-22 23:17:49 +00:00
auto-cxx98.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
auto-subst-failure.cpp Fix PR9488: 'auto' type substitution can fail (for instance, if it creates a reference-to-void type). Don't crash if it does. 2011-03-17 16:11:59 +00:00
bitfield-layout.cpp More work on wide bit-fields, WIP. 2010-04-16 15:57:11 +00:00
block-call.cpp Implement objective-c++'s block pointer type matching involving 2011-02-12 19:07:46 +00:00
blocks-1.cpp Allow C-style casts and reinterpret_casts between block pointers and 2010-07-08 20:27:32 +00:00
blocks.cpp Truncate block variable of bool type to i1 when its 2010-09-03 23:07:53 +00:00
bool.cpp Add a warning to catch a bug recently caught by code review, like this: 2010-07-13 19:41:32 +00:00
borland-extensions.cpp Add support for a few MS extensions supported by the Borland compiler 2010-09-08 22:56:24 +00:00
builtin-exception-spec.cpp Work around an annoying, non-standard optimization in the glibc 2010-02-12 07:32:17 +00:00
builtin-ptrtomember-ambig.cpp 'const std::type_info*' instead of 'std::type_info const*' 2010-09-05 00:17:29 +00:00
builtin-ptrtomember-overload-1.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
builtin-ptrtomember-overload.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
builtin_objc_msgSend.cpp objc_msgSend is not a builtin type in non-objc mode. 2010-11-19 18:16:46 +00:00
builtins.cpp In C++, allow builtins to be referred to via qualified name lookup, e.g., 2010-02-12 05:48:04 +00:00
c99-variable-length-array.cpp Reject the allocation of variably-modified types in C++ 'new' 2010-10-06 16:00:31 +00:00
c99.cpp Emit an extension diagnostic for C99 designated initializers that appear in C++ code 2011-01-16 16:13:16 +00:00
cast-conversion.cpp Provide overload diagnostics when explicit casts involving class types fail. 2011-02-14 18:34:10 +00:00
cast-explicit-ctor.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
class-base-member-init.cpp Diagnose more cases of initializing distinct members of an anonymous union 2010-04-10 09:28:51 +00:00
class-layout.cpp Turn on the new empty base subobject tracking code. It's a bit faster than the previous code. However, it still has quadratic performance, something which I intend to fix shortly in a subsequent patch. 2010-05-30 06:52:33 +00:00
class-names.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
class.cpp Error for use of field from anonymous struct or union should say "invalid use of nonstatic data member" 2011-01-31 07:04:33 +00:00
comma.cpp Implement the lvalue-to-rvalue conversion where needed. The 2010-02-03 00:27:59 +00:00
compare.cpp Don't produce "comparison is always (true|false)" warnings when the 2011-02-19 22:34:59 +00:00
complex-overload.cpp Add a new conversion rank to classify conversions between complex and scalar 2010-02-25 07:20:54 +00:00
composite-pointer-type.cpp make clang print types as "const int *" instead of "int const*", 2010-09-05 00:04:01 +00:00
compound-literal.cpp When building a compound literal, check that the base element of the array is complete. 2010-11-08 19:14:19 +00:00
condition.cpp When deciding whether to complain about the type of a boolean condition, use 2010-12-04 06:09:13 +00:00
conditional-expr.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
const-cast.cpp make clang print types as "const int *" instead of "int const*", 2010-09-05 00:04:01 +00:00
constant-expression.cpp If a switch condition is constant, don't warn about missing enum cases. 2010-05-18 03:19:21 +00:00
constructor-initializer.cpp When checking for uninitialized fields in member initializers, special case static variables and enums. Fixes PR8075. 2010-10-06 02:43:25 +00:00
constructor-recovery.cpp Switch default-initialization of variables of class type (or array thereof) over to InitializationSequence. I could swear that this fixes a PR somewhere, but I couldn't figure out which one 2009-12-20 22:01:25 +00:00
constructor.cpp Diagnose C++ [class.mem]p13-14, where a class member has the same name 2010-10-15 13:21:21 +00:00
conversion-delete-expr.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
conversion-function.cpp When performing template argument deduction for a non-reference 2011-03-06 09:03:20 +00:00
conversion.cpp Extend the bitfield-truncation warning to initializations. 2010-11-11 03:21:53 +00:00
convert-to-bool.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
converting-constructor.cpp Improve the reporting of non-viable overload candidates by noting the reason 2010-01-13 00:25:19 +00:00
copy-assignment.cpp Continue parsing more postfix expressions, even after semantic 2010-09-18 01:28:11 +00:00
copy-constructor-error.cpp Add test case from PR6064, which now works 2010-03-02 18:48:07 +00:00
copy-initialization.cpp Improve diagnostic for calling non-const method on const object. Fixes rdar://7743000 2010-11-16 08:04:45 +00:00
crashes.cpp Add test from PR9026. 2011-01-22 15:34:07 +00:00
cstyle-cast.cpp make clang print types as "const int *" instead of "int const*", 2010-09-05 00:04:01 +00:00
cv-unqual-rvalues.cpp Whenever we're creating an expression that is typically an rvalue 2010-07-13 18:40:04 +00:00
cxx-member-pointer-op.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
cxx0x-constexpr-const.cpp Only objects are declared const by a constexpr specifier, per C++0x [dcl.constexpr]p9 2011-03-20 08:06:45 +00:00
cxx0x-cursory-default-delete.cpp Fix some minor bugs and add a lot more test cases for defaulted 2011-05-17 20:44:43 +00:00
cxx0x-defaulted-functions.cpp Implement some tests for defaulted constructors. To do this I had to 2011-05-17 00:19:05 +00:00
cxx0x-delegating-ctors.cpp Implement a better version of delegating constructor cycle detection. 2011-05-04 05:57:24 +00:00
cxx0x-deleted-default-ctor.cpp Add some more tests. 2011-05-17 20:44:39 +00:00
cxx0x-nontrivial-union.cpp Implement the new C++0x rules for non-trivial things in unions so that 2011-05-16 22:41:40 +00:00
cxx0x-return-init-list.cpp Implement a hack intended to allow Clang to parse libstdc++ 4.5's 2011-03-11 23:10:44 +00:00
dcl_ambig_res.cpp Handle parameter attributes when tentative parsing for function/variable disambiguation. 2010-12-08 02:02:46 +00:00
dcl_init_aggr.cpp make clang print types as "const int *" instead of "int const*", 2010-09-05 00:04:01 +00:00
decl-expr-ambiguity.cpp Although we currently have explicit lvalue-to-rvalue conversions, they're 2010-12-04 03:47:34 +00:00
decl-init-ref.cpp Re-instate r123977/r123978, my updates of the reference-binding 2011-01-24 16:14:37 +00:00
decltype-98.cpp PR9585: add __decltype as a keyword. While I'm here, alphabetize the list. 2011-04-04 07:19:40 +00:00
decltype-crash.cpp Introduce a centralized routine in Sema for diagnosing failed lookups (when 2009-12-16 08:11:27 +00:00
decltype-overloaded-functions.cpp Clean up our handling of template-ids that resolve down to a single 2011-03-16 19:16:25 +00:00
decltype-pr4444.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
decltype-pr4448.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
decltype-this.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
decltype.cpp Make the "unused result" warning a warning about run-time behavior, so 2010-07-15 18:47:04 +00:00
default-argument-temporaries.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
default-assignment-operator.cpp When we emit an error during the implicit definition of a special 2010-05-12 16:39:35 +00:00
default-constructor-initializers.cpp Implement some tests for defaulted constructors. To do this I had to 2011-05-17 00:19:05 +00:00
default1.cpp Whenever we complain about a failed initialization of a function or 2010-04-22 00:20:18 +00:00
default2.cpp Parse default arguments within member functions in source order, from 2010-10-12 16:25:54 +00:00
defaulted-ctor-loop.cpp Implement an additional fix for infinite recursion of deleted special 2011-05-18 03:41:58 +00:00
delete.cpp When applying 'delete' on a pointer-to-array type match GCC and EDG behavior and treat it as 'delete[]'. 2010-09-13 20:15:54 +00:00
deleted-function.cpp Modify some deleted function methods to better reflect reality: 2011-05-06 20:44:56 +00:00
dependent-auto.cpp Fix PR9276: We were missing the checks for auto deducing to different types in the same declaration group in the template instantiation case. 2011-02-23 00:37:57 +00:00
dependent-types.cpp Implement support for C++0x alias templates. 2011-05-05 21:57:07 +00:00
derived-to-base-ambig.cpp Improve diagnostics when we fail to convert from a source type to a 2010-04-09 00:35:39 +00:00
destructor.cpp When clearing a LookupResult structure, clear out the naming class, 2011-03-04 22:32:08 +00:00
direct-initializer.cpp 'const std::type_info*' instead of 'std::type_info const*' 2010-09-05 00:17:29 +00:00
do-while-scope.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
dynamic-cast.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
elaborated-type-specifier.cpp When we run into an error parsing or type-checking the left-hand side 2010-09-17 22:25:06 +00:00
empty-class-layout.cpp Correctly handle fields with virtual bases containing empty subobjects. 2010-06-08 19:09:24 +00:00
enum-bitfield.cpp After parsing a ':' in an enum-specifier within class context, 2010-12-01 17:42:47 +00:00
enum-scoped.cpp Scoped enumerations should not be treated as integer types (in the C 2011-05-05 16:13:52 +00:00
enum.cpp Don't perform integral promotions from an incompletion enumeration 2010-09-12 03:38:25 +00:00
exception-spec-no-exceptions.cpp Semantic checking for exception specifications should be triggered by 2011-03-02 02:04:40 +00:00
exceptions.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
explicit.cpp Fix a pretty bad bug where if a constructor (or conversion function) was marked as 'explicit', but then defined out-of-line, we would not treat it as being explicit. 2010-01-24 17:15:04 +00:00
expression-traits.cpp Make yet another placeholder type, this one marking that an expression is a bound 2011-04-26 20:42:42 +00:00
expressions.cpp Flesh out test. 2010-10-12 03:38:33 +00:00
flexible-array-test.cpp g++ is more permissive regarding flexible arrays. 2011-03-07 20:04:04 +00:00
fntype-decl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
for-range-examples.cpp Add support for C++0x's range-based for loops, as specified by the C++11 draft standard (N3291). 2011-04-14 22:09:26 +00:00
for-range-no-std.cpp Add support for C++0x's range-based for loops, as specified by the C++11 draft standard (N3291). 2011-04-14 22:09:26 +00:00
friend-class-nodecl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
friend.cpp Diagnose destructor templates. Fixes PR7904. 2011-03-04 22:45:55 +00:00
function-overloaded-redecl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
function-redecl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
function-type-qual.cpp Produce an error on encountering a pointer or reference to a qualified function type. Fixes PR7470. 2010-07-12 23:11:43 +00:00
functional-cast.cpp Use the new-initialization code for initializing scalars with a 2010-09-08 21:40:08 +00:00
generalized-initializers.cpp Introduce XFAILed test for braced initializer lists. 2011-05-20 21:07:01 +00:00
generic-selection.cpp C1X: implement generic selections 2011-04-15 00:35:48 +00:00
gnu-case-ranges.cpp Doug's feedback 2010-10-01 22:12:38 +00:00
goto.cpp Minor fix in the injection of labels, since we want to look at the redeclaration context of each declaration in the identifier chain. Should fix Linux self-host 2011-03-24 14:35:16 +00:00
goto2.cpp Fix the insertion of label declarations into the identifier chain in 2011-03-24 10:35:39 +00:00
i-c-e-cxx.cpp Update test for r113128. 2010-09-06 00:30:50 +00:00
if-empty-body.cpp Don't warn for empty 'if' body if there is a macro that expands to nothing, e.g: 2010-11-19 20:54:25 +00:00
illegal-member-initialization.cpp Change the 'declared at' diagnostic to say 'declared here'. 2010-04-23 02:20:12 +00:00
implicit-int.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
implicit-member-functions.cpp Re-do R131114 without breaking code. 2011-05-10 19:08:14 +00:00
implicit-virtual-member-functions.cpp Rework when and how vtables are emitted, by tracking where vtables are 2010-05-13 16:44:06 +00:00
incomplete-call.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
increment-decrement.cpp The pre-increment/pre-decrement grammar in C++ differs from that in C, 2010-08-06 14:50:36 +00:00
inherit.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
init-priority-attr.cpp Pretty up the wrong-number-of-arguments-for-attribute diagnostic by 2011-03-02 12:15:05 +00:00
inline.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
instantiate-blocks.cpp Instantiation of byref variable in 2010-07-09 21:27:28 +00:00
invalid-instantiated-field-decl.cpp Don't attempt to poke into an invalid field's class type 2010-05-17 18:15:18 +00:00
invalid-member-expr.cpp Make this error less specific but also less likely to cause confusion. Fixes 2010-11-03 17:52:57 +00:00
invalid-template-specifier.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
issue547.cpp Implement the suggested resolution to core issue 547, extended to also 2011-01-31 16:09:46 +00:00
libstdcxx_is_pod_hack.cpp Oops 2011-04-29 01:50:40 +00:00
libstdcxx_map_base_hack.cpp Introduce an egregious hack to work around a bug in libstdc++ 4.2.x's 2010-04-08 18:16:15 +00:00
linkage-spec.cpp Don't complain about a variable within a linkage-specification that is 2010-10-15 01:21:46 +00:00
linkage.cpp Fix the rest of PR9316 along with some other bugs spotted by inspection. 2011-02-25 00:05:02 +00:00
literal-operators.cpp Revert my user-defined literal commits - r1124{58,60,67} pending 2010-08-30 17:47:05 +00:00
literal-type.cpp Make type-traits reflect that Clang's vectors act like scalar types. 2011-04-30 10:46:26 +00:00
local-classes.cpp It's okay to refer to non-type template parameters anywhere they are 2010-04-27 21:10:04 +00:00
lookup-member.cpp When doing name lookup for members don't look into global/namespace scope. 2010-10-29 16:12:50 +00:00
member-expr-anonymous-union.cpp A union cannot contain static data members or data members of reference type. 2010-11-07 19:13:55 +00:00
member-expr-static.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
member-expr.cpp Implement Sema::isExprCallable. 2011-05-04 22:10:40 +00:00
member-location.cpp Whenever we complain about a failed initialization of a function or 2010-04-22 00:20:18 +00:00
member-name-lookup.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
member-operator-expr.cpp Make this error less specific but also less likely to cause confusion. Fixes 2010-11-03 17:52:57 +00:00
member-pointer-ms.cpp Error out if reinterpret_casting between member pointers of two different 2010-08-16 05:30:44 +00:00
member-pointer-size.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
member-pointer.cpp Classify bound member function types are member function types. Fixes 2011-05-21 21:04:55 +00:00
member-pointers-2.cpp Allow function calls to dereferenced member pointers of 2011-03-16 17:42:23 +00:00
missing-header.cpp Once we've emitted a fatal diagnostic, keep counting errors but with a 2010-04-14 22:19:45 +00:00
missing-members.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
ms-exception-spec.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
namespace-alias.cpp add PCH support for a bunch of C++ Decls, patch by 2010-05-07 21:43:38 +00:00
namespace.cpp Make sure to properly track the anonymous namespace that lives inside 2010-03-24 00:46:35 +00:00
neon-vector-types.cpp Match pointer of compatible vection types. 2011-04-14 20:33:36 +00:00
nested-name-spec-locations.cpp Eliminate redundant nested-name-specifiers on 2011-03-03 17:04:51 +00:00
nested-name-spec.cpp Test case for previous commit 2011-02-24 02:37:39 +00:00
new-array-size-conv.cpp Implement C++ DR299, which allows an implicit conversion from a class 2010-06-30 00:20:43 +00:00
new-delete-predefined-decl-2.cpp When performing name lookup for the allocation or deallocation 2010-03-24 05:07:21 +00:00
new-delete-predefined-decl.cpp Improve a test slightly 2010-02-12 06:08:51 +00:00
new-delete.cpp Implement access checking for the "delete" operator. Fixes PR9050, 2011-02-01 15:50:11 +00:00
no-exceptions.cpp Disallow try/catch/throw when exceptions are disabled. 2011-02-19 19:26:44 +00:00
no-implicit-builtin-decls.cpp Introduce a centralized routine in Sema for diagnosing failed lookups (when 2009-12-16 08:11:27 +00:00
non-empty-class-size-zero.cpp Turn test for // rdar://8945175 into a sema test. 2011-02-02 21:10:07 +00:00
nullptr-98.cpp Add __nullptr as a C++0x nullptr literal, available in C++98 2010-11-09 03:43:04 +00:00
nullptr.cpp Audit and finish the implementation of C++0x nullptr, fixing two 2011-05-21 23:15:46 +00:00
offsetof.cpp PR7769: Fix references to anonymous structs/unions in base classes in 2010-08-05 10:11:36 +00:00
operator-arrow-temporary.cpp PR9615: make sure we destroy any temporaries returned by operator->. 2011-04-04 01:18:25 +00:00
overload-call-copycon.cpp Improve our handling of user-defined conversions when computing 2010-08-11 02:15:33 +00:00
overload-call.cpp Revert the fix for PR8013. 2010-11-09 20:03:54 +00:00
overload-decl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
overload-member-call.cpp 'const std::type_info*' instead of 'std::type_info const*' 2010-09-05 00:17:29 +00:00
overload-value-dep-arg.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
overloaded-builtin-operators-0x.cpp Implement the integral promotion rules for the C++0x char16_t and 2010-10-21 18:04:08 +00:00
overloaded-builtin-operators.cpp Many of the built-in operator candidates introduced into overload 2011-01-05 00:13:17 +00:00
overloaded-name.cpp Clean up our handling of template-ids that resolve down to a single 2011-03-16 19:16:25 +00:00
overloaded-operator-decl.cpp A function declarator with a non-identifier name in an anonymous class 2010-02-05 06:12:42 +00:00
overloaded-operator.cpp With invalid overloaded operators, we can get into funny cases where 2011-05-05 00:13:13 +00:00
pascal-strings.cpp In C++, when initializing an array from a pascal string, it's OK if the array 2011-04-14 00:41:11 +00:00
pragma-pack.cpp Fix another unnecessary-struct-padding issue. 2010-12-09 02:47:58 +00:00
pragma-unused.cpp Convert "#pragma unused(...)" into tokens for the parser. 2011-01-17 18:58:44 +00:00
prefetch-enum.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
primary-base.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
pseudo-destructors.cpp When clearing a LookupResult structure, clear out the naming class, 2011-03-04 22:32:08 +00:00
ptrtomember-overload-resolution.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
ptrtomember.cpp Make yet another placeholder type, this one marking that an expression is a bound 2011-04-26 20:42:42 +00:00
qual-id-test.cpp Improve the diagnostic you get when making a qualified member access 2010-04-27 01:43:38 +00:00
qualification-conversion.cpp Correctly refer to element CVR qualifications when determining if a type is 2009-12-29 07:16:59 +00:00
qualified-id-lookup.cpp Use the new-initialization code for initializing scalars with a 2010-09-08 21:40:08 +00:00
qualified-member-enum.cpp Fix a minor crash bug with constructs like Obj.Class::ENUM_VALUE. 2010-07-27 20:51:02 +00:00
qualified-names-diag.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
qualified-names-print.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
redeclared-alias-template.cpp Implement support for C++0x alias templates. 2011-05-05 21:57:07 +00:00
redeclared-auto.cpp Implement the C++0x deduced 'auto' feature. 2011-02-20 03:19:35 +00:00
ref-init-ambiguous.cpp 'const std::type_info*' instead of 'std::type_info const*' 2010-09-05 00:17:29 +00:00
references.cpp Add another case to the whitelist of cast kinds that can convert to bool. 2010-11-16 00:12:50 +00:00
reinterpret-cast.cpp Add a warning for when reinterpret_cast leads to undefined behavior, patch by Richard Trieu! 2011-05-02 18:21:19 +00:00
reinterpret-fn-obj-pedantic.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
return-noreturn.cpp Fix null dereference in CFGBlock::FilterEdge that was reported in PR 9412. 2011-03-07 22:04:39 +00:00
return-stack-addr.cpp Remove a type that got reduced away from this test case but not actually deleted. 2010-12-13 08:01:53 +00:00
return.cpp Fix PR9453 by not trying to print a warning about ignored qualifiers 2011-03-11 04:56:58 +00:00
rval-references-examples.cpp Add a test for "perfect" forwarding 2011-01-21 22:52:47 +00:00
rval-references.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
scope-check.cpp I concur with DPG here. This does indeed apply in 0x mode. Added test 2011-04-22 19:01:39 +00:00
shift.cpp Simplify messages as requested by Chris. 2011-02-24 17:13:15 +00:00
short-enums.cpp fix PR9474, a crash with -fshort-enum and C++ templates: when instantiating 2011-04-25 20:37:58 +00:00
short-wchar-sign.cpp PR9792: Make sure to use the right definition of wchar_t when the default 2011-04-30 19:24:24 +00:00
sourceranges.cpp Use ElaboratedType also for C. 2011-03-16 20:16:18 +00:00
statements.cpp In C++98/03, an uninitialized variable that has POD class type will be 2010-03-08 02:45:10 +00:00
static-array-member.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
static-assert.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
static-cast-complete-type.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
static-cast.cpp Implement appropriate semantics for C++ casting and conversion when 2011-04-15 17:59:54 +00:00
static-initializers.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
storage-class.cpp Don't warn about the 'extern' in 'extern "C"' on a tag decl. This is 2011-03-26 02:09:52 +00:00
struct-class-redecl.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
switch-0x.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
switch.cpp compute the integer width, not the memory width here. We want to know that 2011-02-24 07:31:28 +00:00
tag-ambig.cpp Extend the tag-ambiguity hack I committed in r130810 for tag 2011-05-09 21:46:33 +00:00
templated-friend-decl.cpp Workaround for friend template instantiation crash in PR5848, from Keir Mierle! 2010-02-07 10:31:35 +00:00
this.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
trailing-return-0x.cpp Implement the C++0x deduced 'auto' feature. 2011-02-20 03:19:35 +00:00
trivial-constructor.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
trivial-destructor.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
type-convert-construct.cpp Use the new-initialization code for initializing scalars with a 2010-09-08 21:40:08 +00:00
type-definition-in-specifier.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
type-dependent-exprs.cpp Don't produce "comparison is always (true|false)" warnings when the 2011-02-19 22:34:59 +00:00
type-formatting.cpp When printing a qualified type, look through a substituted template 2011-02-17 06:52:25 +00:00
type-traits-incomplete.cpp Allow (cv) void and incomplete arrays to be passed to the type traits. 2010-09-08 00:48:43 +00:00
type-traits.cpp Implement the __is_trivially_copyable type trait 2011-05-13 00:31:07 +00:00
typedef-redecl.cpp Diagnose typedef of an operator name. Fixes PR7462 2010-07-13 06:37:01 +00:00
typeid-ref.cpp Mark VTables and RTTI data linkonce_odr instead of weak_odr, with the exception of explicit template instantiations, which have to be weak_odr. 2011-01-24 00:46:19 +00:00
typeid.cpp Improve source-location information in a C++ typeid (type) expression 2010-04-26 22:37:10 +00:00
types_compatible_p.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
unary-real-imag.cpp PR8023: Don't crash on invalid uses of __real__ on class types in C++. 2010-09-05 23:15:52 +00:00
undefined-internal.cpp Rough fix for PR9323 that prevents Clang from marking copy constructor 2011-02-25 08:52:25 +00:00
underlying_type.cpp Fix test on Windows. 2011-05-19 22:39:47 +00:00
uninit-variables-conditional.cpp Switch 'is possibly uninitialized' to 'may be uninitialized' based on 2011-04-08 06:47:15 +00:00
uninit-variables.cpp Teach -Wuninitialized about C++'s typeid expression, including both the 2011-04-13 08:18:42 +00:00
uninitialized.cpp Fix PR9624 by explicitly disabling uninitialized warnings for direct self-init: 2011-04-05 17:41:31 +00:00
unknown-anytype.cpp After some discussion with Doug, we decided that it made a lot more sense 2011-04-12 00:42:48 +00:00
unknown-type-name.cpp When pretty-printing tag types, only print the tag if we're in C (and 2010-03-10 11:27:22 +00:00
unreachable-catch-clauses.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
unreachable-code.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
unused-functions.cpp Don't emit unused warning for deleted functions. Fixes rdar://8365684 & http://llvm.org/PR9391. 2011-03-03 17:47:42 +00:00
unused-with-error.cpp If there were errors, disable 'unused' warnings since they will mostly be noise. 2011-01-31 07:04:37 +00:00
unused.cpp Improve the test for unused-expression warnings slightly 2010-01-16 18:17:21 +00:00
user-defined-conversions.cpp Improve our handling of user-defined conversions as part of overload 2010-04-17 22:01:05 +00:00
using-decl-1.cpp When checking a using declaration, make sure that the context we're 2010-12-21 07:41:49 +00:00
using-decl-pr4441.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
using-decl-pr4450.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
using-decl-templates.cpp Don't be so eager to replace UsingDecls in a DeclContext's lookup table; 2010-11-04 08:48:52 +00:00
using-directive.cpp Diagnose attempst to template using declarations and using directives. 2010-11-10 02:40:36 +00:00
value-dependent-exprs.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
value-initialization.cpp Add a missing case for default constructor deletion. 2011-05-20 21:43:47 +00:00
vararg-default-arg.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
vararg-non-pod.cpp Fix our handling of the warning when one tries to pass a 2011-05-21 19:26:31 +00:00
vector-casts.cpp Provide overload diagnostics when explicit casts involving class types fail. 2011-02-14 18:34:10 +00:00
vector-no-lax.cpp With lax vector conversions (the default) make sure we convert between two 2010-08-26 00:42:16 +00:00
vector.cpp With lax vector conversions (the default) make sure we convert between two 2010-08-26 00:42:16 +00:00
virtual-base-used.cpp Make this test check a few more cases which didn't work correctly before 2010-08-08 05:07:06 +00:00
virtual-member-functions-key-function.cpp Rework when and how vtables are emitted, by tracking where vtables are 2010-05-13 16:44:06 +00:00
virtual-override.cpp Fix PR8767, improve diagnostic wording when allocating an object of an 2011-02-18 23:59:51 +00:00
virtuals.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
vtable-instantiation.cc At the end of the translation unit, defining a vtable can introduce 2011-04-22 22:25:37 +00:00
warn-assignment-condition.cpp Don't do the checks of Sema::DiagnoseEqualityWithExtraParens() on type-dependent expressions. Fixes rdar://9027658. 2011-03-28 23:52:04 +00:00
warn-bool-conversion.cpp Clean up the bool conversion warning. Group it with other conversion 2011-04-09 07:48:17 +00:00
warn-cast-align.cpp On second thought, don't warn about reinterpret_casts under -Wcast-align. 2010-08-19 01:19:08 +00:00
warn-char-subscripts.cpp Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. 2009-12-15 20:14:24 +00:00
warn-deprecated-header.cpp Add the test that I intended to submit with r130055, but forgot to add. 2011-04-27 05:25:42 +00:00
warn-enum-compare.cpp Implement -Wenum-compare, which warns when comparing two enums of 2011-02-17 08:37:06 +00:00
warn-exit-time-destructors.cpp Add a new warning for exit-time destructors. 2011-03-24 01:01:41 +00:00
warn-global-constructors.cpp PR9669: implement correct checking for [dcl.init.string]p2. 2011-04-11 00:23:45 +00:00
warn-large-by-value-copy.cpp -Rename -Wargument-larger-than -> -Wlarge-by-value-copy 2010-11-18 00:20:36 +00:00
warn-literal-conversion.cpp Enhance the diagnostic for literal float -> int conversions to suggest 2011-04-10 08:36:24 +00:00
warn-missing-noreturn.cpp Teach -Wreturn-type that destructors can appear 2011-01-26 04:49:52 +00:00
warn-missing-prototypes.cpp Apply Jonathan Sauer's proposed solution to PR9519. Thanks! 2011-03-22 07:16:37 +00:00
warn-non-pod-memset.cpp Extend -Wnon-pod-memset to also encompass memcpy() and memmove(), 2011-05-03 20:37:33 +00:00
warn-overloaded-virtual.cpp -Woverloaded-virtual shouldn't warn for static functions. Fixes rdar://9083431 & http://llvm.org/PR9396. 2011-03-03 22:58:57 +00:00
warn-pure-virtual-call-from-ctor-dtor.cpp Warn when trying to call a pure virtual member function in a class from the class constructor/destructor. Fixes PR7966. 2011-05-06 14:25:31 +00:00
warn-reorder-ctor-initialization.cpp Fix a crasher in constructor-initializer reordering warnings (PR7179). 2010-05-20 23:49:34 +00:00
warn-self-assign.cpp Implement -Wself-assign, which warns on code such as: 2011-01-04 06:52:15 +00:00
warn-self-comparisons.cpp Warn about comparisons between arrays and improve self-comparison 2010-06-08 19:50:34 +00:00
warn-shadow.cpp 'extern' variables in functions don't shadow externs in global scope. Fixes rdar://8883302, this time for C++ as well. 2011-04-25 21:39:50 +00:00
warn-sign-compare.cpp Promote enum types during -Wsign-compare. Fixes some spurious warnings, 2010-03-19 18:53:26 +00:00
warn-unreachable.cpp Add -fcxx-exceptions to all tests that use C++ exceptions. 2011-02-28 00:40:07 +00:00
warn-unused-filescoped.cpp We regard a function as 'unused' from the codegen perspective, so our warnings diverge from 2011-04-19 19:51:10 +00:00
warn-unused-parameters.cpp Do not diagnose unused-parameter errors in template instantiations. We 2010-04-19 23:56:20 +00:00
warn-unused-result.cpp Clean up the tests for warning about unused function results given the 2011-02-21 00:56:56 +00:00
warn-unused-value.cpp Improve the unused-value check to look into comma expressions and filter out 2010-03-12 07:11:26 +00:00
warn-unused-variables.cpp Clean up the tests for warning about unused function results given the 2011-02-21 00:56:56 +00:00
warn-using-namespace-in-header.cpp Make -Wheader-hygiene not complain about USING_NAMESPACE_THROUGH_MACRO in a non-header file. 2011-04-02 19:45:15 +00:00
warn-using-namespace-in-header.h Make -Wheader-hygiene not complain about USING_NAMESPACE_THROUGH_MACRO in a non-header file. 2011-04-02 19:45:15 +00:00
warn-weak-vtables.cpp Rework when and how vtables are emitted, by tracking where vtables are 2010-05-13 16:44:06 +00:00
wchar_t.cpp Remove a dead argument to ProcessUCNEscape. 2010-06-15 18:06:43 +00:00
writable-strings-deprecated.cpp GCC overloads -Wwrite-strings just to make it extra confusing. While it 2011-04-23 06:54:44 +00:00