Есть *.h файл, в котором нужно сделать forward declaration enum (не enum class).
Первое что приходит в голову:
enum myEnum : int;
Это работает, но это не совсем правильно в кросплатформенном (Win 64 msvc, Linux 64 gcc) коде явно указывать тип данных явно (в хедере, который мы форвардим, тип данных дня enum указать возможности нет, там C++03)
Поэтому второе, что приходит в голову:
#include <type_traits>
enum enum_dummy { }
enum myEnum : std::underlying_type_t<enum_dummy>;
Но gcc не понимает, что я хочу сделать.
Есть красивый выход из этой ситуации?