Hi Tobias,
OK for the trunk?
I just checked, and this gets a segfault for
program main
character (len=3), parameter :: x = 'abc'
print *, x(2:2)
end program main
+ if (ts)
+ e->kind = ts->kind;
+ else if (e->symtree->n.sym->ts.type == BT_CHARACTER)
+ e->kind = ts->kind;
There are two potential problems: e->symtree could be NULL,
and (if the second assignment is reached) ts is NULL.
You may have meant
e->kind = e->symtree->n.sym->ts.kind;
Could you correct that, and resubmit?
Thanks for working on this!
Best regards
Thomas