On Wed, Sep 19, 2018 at 7:24 PM Andrew Stubbs <a...@codesourcery.com> wrote:
> On 05/09/18 19:07, Janne Blomqvist wrote: > > The argument must be of type size_type_node, not sizetype. Please instead > > use > > > > size = build_zero_cst (size_type_node); > > > > > >> * trans-intrinsic.c (conv_intrinsic_event_query): Convert > computed > >> index to a size_t type. > >> > > > > Using integer_type_node is wrong, but the correct type for calculating > > array indices (lbound, ubound, etc.) is not size_type_node but rather > > gfc_array_index_type (which in practice maps to ptrdiff_t). So please use > > that, and then fold_convert index to size_type_node just before > generating > > the call to event_query. > > > > > >> * trans-stmt.c (gfc_trans_event_post_wait): Likewise. > >> > > > > Same here as above. > > How is the attached? I retested and found no regressions. > > Andrew > Ok, looks good. There are some other remaining incorrect uses of integer_type_node (at least one visible in the diff), but that can be done as a separate patch (not saying you must do it as a precondition for anything, though it would of course be nice if you would. :) ) -- Janne Blomqvist