! RUN: %python %S/test_errors.py %s %flang_fc1 -pedantic
module m
  use iso_c_binding
  type haslen(L)
    integer, len :: L
  end type
 contains
  subroutine test(assumedType, poly, nclen)
    type(*), target :: assumedType
    class(*), target ::  poly
    type(c_ptr) cp
    type(c_funptr) cfp
    real notATarget
    !PORTABILITY: Procedure pointer 'pptr' should not have an ELEMENTAL intrinsic as its interface
    procedure(sin), pointer :: pptr
    real, target :: arr(3)
    type(hasLen(1)), target :: clen
    type(hasLen(*)), target :: nclen
    character(2), target :: ch
    !ERROR: C_LOC() argument must be a data pointer or target
    cp = c_loc(notATarget)
    !ERROR: C_LOC() argument must be a data pointer or target
    cp = c_loc(pptr)
    !ERROR: C_LOC() argument must be contiguous
    cp = c_loc(arr(1:3:2))
    !ERROR: C_LOC() argument may not be a zero-sized array
    cp = c_loc(arr(3:1))
    !ERROR: C_LOC() argument must have an intrinsic type, assumed type, or non-polymorphic derived type with no non-constant length parameter
    cp = c_loc(poly)
    cp = c_loc(clen) ! ok
    !ERROR: C_LOC() argument must have an intrinsic type, assumed type, or non-polymorphic derived type with no non-constant length parameter
    cp = c_loc(nclen)
    !ERROR: C_LOC() argument may not be zero-length character
    cp = c_loc(ch(2:1))
    !WARNING: C_LOC() argument has non-interoperable intrinsic type, kind, or length
    cp = c_loc(ch)
    cp = c_loc(ch(1:1)) ! ok)
    !ERROR: PRIVATE name '__address' is only accessible within module '__fortran_builtins'
    cp = c_ptr(0)
    !ERROR: PRIVATE name '__address' is only accessible within module '__fortran_builtins'
    cfp = c_funptr(0)
    !ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches operand types TYPE(c_ptr) and TYPE(c_funptr)
    cp = cfp
    !ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches operand types TYPE(c_funptr) and TYPE(c_ptr)
    cfp = cp
  end
end module
