view gcc/testsuite/g++.dg/torture/pr86816.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
line wrap: on
line source

// { 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();
}