On Sat, Jul 20, 2024 at 02:42:20PM -0600, Sandra Loosemore wrote: > +static tree > +omp_encode_kind_arch_isa_props (tree props) > +{ > + if (!props) > + return NULL_TREE; > + size_t length = 1; > + for (tree p = props; p; p = TREE_CHAIN (p)) > + length += strlen (omp_context_name_list_prop (p)) + 1; > + char *buffer = (char *) alloca (length);
This should be char *buffer = XALLOCAVEC (char, length); > + /* Generate > + devnum = (num == -1) ? GOMP_DEVICE_HOST_FALLBACK : num); > + to remap -1 for GOMP_* functions. */ In the comment there are 2 closing parens vs. one opening, should the one before ; be dropped? > @@ -150,6 +166,15 @@ extern tree make_trait_set_selector (enum omp_tss_code, > tree, tree); > extern tree make_trait_selector (enum omp_ts_code, tree, tree, tree); > extern tree make_trait_property (tree, tree, tree); > > +/* Accessors and constructor for metadirective variants. */ > +#define OMP_METADIRECTIVE_VARIANT_SELECTOR(v) \ > + TREE_PURPOSE (v) > +#define OMP_METADIRECTIVE_VARIANT_DIRECTIVE(v) \ > + TREE_PURPOSE (TREE_VALUE (v)) > +#define OMP_METADIRECTIVE_VARIANT_BODY(v) \ > + TREE_VALUE (TREE_VALUE (v)) I think the above macros should go to tree.h after OMP_METADIRECTIVE_VARIANTS definition, not in this header (plus the docs adjusted not to talk about omp-general.h). Why needs omp-general.h the move in GTFILES etc.? Will just moving those definitions be ok? Otherwise LGTM. Jakub