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/.

Richard

Reply via email to