Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/opt/pr24665.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// { dg-do compile } // { dg-options "-O2" } typedef unsigned long T; typedef volatile T* const hwreg_t; struct RegisterLayout { T intmask; }; struct Controller_t { Controller_t(); inline void disableInterrupt() { *mpMaskRegister = 0; }; static hwreg_t mpMaskRegister; }; extern char SimulatedRegisters[]; hwreg_t Controller_t::mpMaskRegister = &(reinterpret_cast<volatile RegisterLayout*>(SimulatedRegisters))->intmask; Controller_t::Controller_t() { disableInterrupt(); }