On 14.01.22 12:55, Jakub Jelinek via Fortran wrote:
If we want to check intptr_t, we should guard the dg-error with "" { target { lp64 || llp64 } } or so.
Well, if we want to use intptr_t, we could use be explicitly as with: use iso_c_binding, only: c_intptr_t ! use omp_lib, only: omp_allocator_handle_kind ... ('implicit none' etc.) integer, parameter :: omp_allocator_handle_kind = c_intptr_t ... integer(kind=omp_allocator_handle_kind) (@Abid: The 'use omp_lib' line is commented as in gcc/testsuite/*/gomp/, the OpenMP module/header from libgomp is not available - and then a stub parameter is created.)
Otherwise yes, we can add some other kind and hope it is not the same as omp_allocator_handle_kind. Or we can do both, keep the current one with the target lp64 || llp64 and add another one with some integer(kind=1).
For just testing something invalid, I think it makes more sense to just set it to kind=1. For checking the valid value, using c_intptr_t seems to make more sense than restricting it to (l)l64. Tobias ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955