// { dg-do compile } | |
class Signal | |
{ | |
public: | |
int m_Mode; | |
}; | |
class Ctx | |
{ | |
public: | |
bool m_Invert; | |
void DoSomething(); | |
}; | |
class Test | |
{ | |
void TestIce( Ctx& ctx, Signal* sig); | |
}; | |
void Test::TestIce( Ctx& ctx, Signal* sig) | |
{ | |
int invert = false; | |
if( ! ctx.m_Invert) | |
invert = ! invert; | |
switch( sig->m_Mode) | |
{ | |
case 1: | |
invert = ! invert; | |
break; | |
case 2: | |
invert = true; | |
break; | |
} | |
if( invert) | |
ctx.DoSomething(); | |
} |