I may have asked this question once already (long ago). If so I apologize. I forgot the answer. Are either or both of these examples legal? enum E { red, green = sizeof (enum E), blue }; struct S { int i; int j : sizeof (struct S); int k; };