llvm/flang/test/Semantics/definable05.cuf

! RUN: %python %S/test_errors.py %s %flang_fc1
module m
  real, constant :: rc
  !ERROR: Object 'rcp' with ATTRIBUTES(CONSTANT) may not be allocatable, pointer, or target
  real, constant, pointer :: rcp
  !ERROR: Object 'rct' with ATTRIBUTES(CONSTANT) may not be allocatable, pointer, or target
  real, constant, target :: rct
  real, device, pointer :: dp(:)
  real, device, target :: dt(100)
 contains
  attributes(device) subroutine devsub
    !ERROR: Left-hand side of assignment is not definable
    !BECAUSE: 'rc' has ATTRIBUTES(CONSTANT) and is not definable in a device subprogram
    rc = 1.
    !ERROR: The left-hand side of a pointer assignment is not definable
    !BECAUSE: 'dp' is a pointer and may not be associated in a device subprogram
    dp => dt
  end
  attributes(global) subroutine globsub
    !ERROR: Left-hand side of assignment is not definable
    !BECAUSE: 'rc' has ATTRIBUTES(CONSTANT) and is not definable in a device subprogram
    rc = 1.
    !ERROR: The left-hand side of a pointer assignment is not definable
    !BECAUSE: 'dp' is a pointer and may not be associated in a device subprogram
    dp => dt
  end
  subroutine hostsub
    rc = 1.
    dp => dt
  end
end