forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			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;
 | |
| }
 | |
| 
 |