Hi all,
I merged the Fortran-Experiments branch to r120360 (= 2007-01-02; before
it was r120078).
I plan to merge further, but I want to do it in little steps to make
sure I don't miss any conflicts.
The previous branch was r121965, the new brach rev. is 122202.
The merge was (in the Fortran directories) visually checked [I skimmed
the diffs] and I did a full bootstrap and check-gfortran.
The only two change I had to do to make it compile / run were the following:
I added "case BT_VOID:" to trans-expr.c's conv_arglist_function. This is
a new function and this "case" is in:
+ if (strncmp (name, "%VAL", 4) == 0)
+ {
+ gfc_conv_expr (se, expr);
+ /* %VAL converts argument to default kind. */
+ switch (expr->ts.type)
+ {
[...]
+ /* This should have been resolved away. */
+ case BT_UNKNOWN: case BT_CHARACTER: case BT_DERIVED:
+ case BT_PROCEDURE: case BT_HOLLERITH: case BT_VOID:
+ gfc_internal_error ("Bad type in conv_arglist_function");
+ }
Change 2:
- if (sym->attr.is_iso_c == 1)
+ if (sym && sym->attr.is_iso_c == 1)
in resolve.c's resolve_function, otherwise I got a segmentation fault
when running gfortran.dg/nested_modules_6.f90.
Tobias