Remember that it is totally OK to create code that doesn't compile.
As long as usable code is produced often enough (and as long as the change
doesn't stop the pass from producing usable code in other circumstances)
then something like this is fine.
John
Yes, I did and tried your patch. Applying your patch did remove A, but it
could introduce other incompilable code during reduction, e.g.,
class A {};
template <class T> class B: A{};
class C : A {};
will be transformed to
template <class T> class B {};
class C : B {};
- Yang