It seems that G++ 4.8 doesn't accept the 'enum A' in code of the form:
enum A { ... };
const auto &F = []() -> enum A { ... };
However, it does accept:
typedef enum { ... } A;
const auto &F = []() -> A { ... };
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@308599
91177308-0d34-0410-b5e6-
96231b3b80d8
uint64_t CurrentIdx = 0;
SmallVector<uint64_t, 8> OnFailResumeAt;
- enum RejectAction { RejectAndGiveUp, RejectAndResume };
- auto handleReject = [&]() -> enum RejectAction {
+ typedef enum { RejectAndGiveUp, RejectAndResume } RejectAction;
+ auto handleReject = [&]() -> RejectAction {
DEBUG(dbgs() << CurrentIdx << ": Rejected\n");
if (OnFailResumeAt.empty())
return RejectAndGiveUp;