// PR c++/35056 | |
// { dg-do compile } | |
// { dg-options "-O2" } | |
enum EBorderStyle { bla = 1 }; | |
inline bool compare_ref(const unsigned int &t, const EBorderStyle &u) | |
{ return t == u; } | |
inline bool compare_val(const unsigned int t, const EBorderStyle u) | |
{ return t == u; } | |
struct S { | |
unsigned m_style : 4; | |
}; | |
void call_ref (S *s, EBorderStyle v) | |
{ if (!compare_ref(s->m_style, v)) s->m_style = v; } | |
void call_val (S *s, EBorderStyle v) | |
{ if (!compare_val(s->m_style, v)) s->m_style = v; } |