101e04c3fSmrg#version 130
201e04c3fSmrg
301e04c3fSmrgstruct s {
401e04c3fSmrg  float c;
501e04c3fSmrg  float x;
601e04c3fSmrg};
701e04c3fSmrg
801e04c3fSmrgvoid main()
901e04c3fSmrg{
1001e04c3fSmrg  float fooFloat;
1101e04c3fSmrg  s fooStruct;
1201e04c3fSmrg
1301e04c3fSmrg  fooFloat = fooStruct.c;
1401e04c3fSmrg  fooStruct.c = 10.0;
1501e04c3fSmrg  fooFloat = fooStruct.c;
1601e04c3fSmrg  fooStruct.c = 20.0;
1701e04c3fSmrg
1801e04c3fSmrg  /* Technically .x is also uninitialized, but detecting this is beyond
1901e04c3fSmrg   * scope. FWIW, gcc doesn't detect this neither.
2001e04c3fSmrg   */
2101e04c3fSmrg  fooFloat = fooStruct.x;
2201e04c3fSmrg}
2301e04c3fSmrg
24