Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions orc-rt/include/orc-rt/RTTI.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,12 @@
#ifndef ORC_RT_RTTI_H
#define ORC_RT_RTTI_H

#include <type_traits>

namespace orc_rt {

class ErrorInfoBase;

template <typename ThisT, typename ParentT> class RTTIExtends;

/// Base class for the extensible RTTI hierarchy.
Expand Down Expand Up @@ -107,6 +111,10 @@ class RTTIRoot {
///
template <typename ThisT, typename ParentT> class RTTIExtends : public ParentT {
public:
static_assert(!std::is_base_of_v<ErrorInfoBase, ParentT>,
"RTTIExtends should not be used to define orc_rt custom error "
"types, use ErrorExtends instead");

// Inherit constructors and isA methods from ParentT.
using ParentT::isA;
using ParentT::ParentT;
Expand Down
Loading