1 | // RUN: %clang_cc1 %s -triple i686-pc-linux-gnu -emit-llvm -o /dev/null |
2 | // PR4590 |
3 | |
4 | typedef unsigned char __u8; |
5 | typedef unsigned int __le32; |
6 | typedef unsigned int __u32; |
7 | typedef unsigned short __le16; |
8 | typedef unsigned short __u16; |
9 | |
10 | struct usb_cdc_ether_desc { |
11 | __u8 bLength; |
12 | __u8 bDescriptorType; |
13 | __u8 bDescriptorSubType; |
14 | |
15 | __u8 iMACAddress; |
16 | __le32 bmEthernetStatistics; |
17 | __le16 wMaxSegmentSize; |
18 | __le16 wNumberMCFilters; |
19 | __u8 bNumberPowerFilters; |
20 | } __attribute__ ((packed)); |
21 | |
22 | |
23 | static struct usb_cdc_ether_desc ecm_desc __attribute__ ((__section__(".init.data"))) = { |
24 | .bLength = sizeof ecm_desc, |
25 | .bDescriptorType = ((0x01 << 5) | 0x04), |
26 | .bDescriptorSubType = 0x0f, |
27 | |
28 | |
29 | |
30 | .bmEthernetStatistics = (( __le32)(__u32)(0)), |
31 | .wMaxSegmentSize = (( __le16)(__u16)(1514)), |
32 | .wNumberMCFilters = (( __le16)(__u16)(0)), |
33 | .bNumberPowerFilters = 0, |
34 | }; |
35 | |