Richard Sandiford <richard.sandif...@arm.com> writes: > Marc Poulhiès <poulh...@adacore.com> writes: >> Hello, >> >> I can't bootstrap using gcc 5.5 since this change. It fails with: >> >> .../gcc/pair-fusion.cc: In member function ‘bool >> pair_fusion_bb_info::fuse_pair(bool, unsigned int, int, rtl_ssa::insn_info*, >> rtl_ssa::in >> sn_info*, base_cand&, const rtl_ssa::insn_range_info&)’: >> .../gcc/pair-fusion.cc:1790:40: error: ‘writeback’ is not a class, >> namespace, or enumeration >> if (m_pass->should_handle_writeback (writeback::ALL) >> ^ >> Is it possible that C++11 enum classes are not correctly supported in >> older GCC? > > Looks to be due to an overloading of "writeback", which is also a local > variable in that function. > > One fix would be to rename the type to "writeback_type". > FWIW, the "enum"s in "enum writeback" can also be removed, > so it'd be s/enum writeback/writeback_type/.
Thanks Richard! I've submitted a patch based on your suggestion and checked the compiler was correctly built using gcc 5.5. Marc