HI,

  I'm a newbie and I'm trying to modify the front end to extend C.

  I know the following code can be accepted,

  void f (struct S { int a; } s, int a[][s.a]) { } .

  I'm wondering whether it is possible to build a structure which has a
variably modified array whose size depends on an other field in that
structure at parameter scopes,
  i.e, something like this,

  void f (struct S { int a; int b[s.a]; } s) { } .

  This won't be compiled as s is not declared when build the struct S, but
by modifying the front end code, I can mimic this directly. However, the
assertion,

  gcc_assert (SA.partition_to_pseudo[i]);

  in the function gimple_expend_cfg in cfgexpand.c fails, and I've no idea
why.

  I'm using 4.6.3.

Thanks,
Chenkan

Reply via email to