class IsConstantExprVisitor : public virtual TraversalBase<bool> {
public:
- using Base = TraversalBase<bool>;
- using Base::Handle, Base::Pre, Base::Post;
-
explicit IsConstantExprVisitor(std::nullptr_t) {}
template<int KIND> void Handle(const TypeParamInquiry<KIND> &inq) {
}
template<typename RESULT, typename... A>
-class Traversal : public virtual TraversalBase<RESULT>, public virtual A... {
+class Traversal : public virtual TraversalBase<RESULT>, public A... {
public:
using Result = RESULT;
+ using Base = TraversalBase<Result>;
+ using Base::Handle, Base::Pre, Base::Post;
using A::Handle..., A::Pre..., A::Post...;
private:
using TraversalBase<Result>::result_, TraversalBase<Result>::defaultHandle_;