55 lines
1.1 KiB
C
55 lines
1.1 KiB
C
// RUN: %clang_cc1 -emit-llvm %s -o %t
|
|
|
|
// From GCC PR19331
|
|
struct SysParams
|
|
{
|
|
unsigned short tag;
|
|
unsigned short version;
|
|
unsigned int seqnum;
|
|
int contrast;
|
|
int igain_1, igain_2;
|
|
int oattn_1, oattn_2;
|
|
int max_out_vltg_1, max_out_vltg_2;
|
|
int max_mains_current;
|
|
int meters_mode;
|
|
int input_select;
|
|
_Bool input_parallelch2:1;
|
|
_Bool cliplmt_ch1:1;
|
|
_Bool cliplmt_ch2:1;
|
|
_Bool gate_ch1:1;
|
|
_Bool gate_ch2:1;
|
|
_Bool mute_ch1:1;
|
|
_Bool mute_ch2:1;
|
|
_Bool brownout:1;
|
|
_Bool power_on:1;
|
|
_Bool pwrup_mute:1;
|
|
_Bool keylock:1;
|
|
_Bool dsp_ch1:1;
|
|
_Bool dsp_ch2:1;
|
|
int dsp_preset;
|
|
long unlock_code;
|
|
};
|
|
extern struct SysParams params;
|
|
|
|
void foo(void *);
|
|
void kcmd_setParams(void)
|
|
{
|
|
struct {
|
|
unsigned char igain_1;
|
|
unsigned char igain_2;
|
|
unsigned char max_out_vltg_1;
|
|
unsigned char max_out_vltg_2;
|
|
unsigned char max_imains;
|
|
unsigned char cliplmt_ch1:1;
|
|
unsigned char cliplmt_ch2:1;
|
|
unsigned char gate_ch1:1;
|
|
unsigned char gate_ch2:1;
|
|
} msg;
|
|
foo(&msg);
|
|
params.cliplmt_ch1 = msg.cliplmt_ch1;
|
|
params.cliplmt_ch2 = msg.cliplmt_ch2;
|
|
params.gate_ch1 = msg.gate_ch1;
|
|
params.gate_ch2 = msg.gate_ch2;
|
|
}
|
|
|