llvm-project/clang/test/CXX/class.derived
Douglas Gregor 4165bd6772 Implement computation of the final overriders for each virtual
function within a class hierarchy (C++ [class.virtual]p2).

We use the final-overrider computation to determine when a particular
class is ill-formed because it has multiple final overriders for a
given virtual function (e.g., because two virtual functions override
the same virtual function in the same virtual base class). Fixes
PR5973.

We also use the final-overrider computation to determine which virtual
member functions are pure when determining whether a class is
abstract or diagnosing the improper use of an abstract class. The
prior approach to determining whether there were any pure virtual
functions in a class didn't cope with virtual base class subobjects
properly, and could not easily be fixed to deal with the oddities of
subobject hiding. Fixes PR6631.

llvm-svn: 99351
2010-03-23 23:47:56 +00:00
..
class.abstract Implement computation of the final overriders for each virtual 2010-03-23 23:47:56 +00:00
class.member.lookup Reinstate r97674 with a fix for the assertion that was firing in <list> 2010-03-03 23:55:11 +00:00
class.virtual Implement computation of the final overriders for each virtual 2010-03-23 23:47:56 +00:00
p2.cpp Fix for PR5840: fix the kind of name lookup used for classes in 2009-12-21 01:42:38 +00:00