On Sun, 7 May 2006, Neil Booth wrote: > For the composite type, 6.2.7p3 dash 1 applies, and the composite is > the VLA type. That VLA type is derived indirectly from an incomplete > type, and hence subscripting that incomplete type falls foul of the > contraint on the subscript operator. > > I believe your example is the same, just with an extra level of nesting > from the nested conditional expression. > > If you disagree could you point out the error in my reasoning?
I believe that "These rules apply recursively to the types from which the two types are derived." means that the composite of T1[variable] and T2[] is not T1[variable] but (composite(T1,T2))[variable]. I do not think interpreting "is that type" to override the recursivity makes sense, because it would yield self-contradictory results for the composite type of two VLA types which are compatible but not the same. -- Joseph S. Myers http://www.srcf.ucam.org/~jsm28/gcc/ [EMAIL PROTECTED] (personal mail) [EMAIL PROTECTED] (CodeSourcery mail) [EMAIL PROTECTED] (Bugzilla assignments and CCs)