! Have to enable optimizations, as otherwise builtins won't be expanded.
! { dg-additional-options "-O -fdump-rtl-expand -std=legacy" }
logical function f ()
  implicit none
  external acc_on_device
  logical (4) acc_on_device
  f = .false.
  f = f .or. acc_on_device ()
  f = f .or. acc_on_device (1, 2) ! { dg-warning ".*" }
  f = f .or. acc_on_device (3.14)
  f = f .or. acc_on_device ("hello")
  return
end function f
! Unsuitable to be handled as a builtin, so we're expecting four calls.
! { dg-final { scan-rtl-dump-times "\\\(call \[^\\n\]* acc_on_device" 4 "expand" } }