Fortran string concat not allowed in accelerated region?

HI,

I am trying to compile a Fortran code that has a string concatenation in a compute region.
The code does not compile giving this error:

NVFORTRAN-S-1058-Call to PGI runtime function not supported - pgf90_str_copy_klen

The line it is referring to is:

call ffopen (IO_TEMP2,'ssinflow_p'//iproc_str,'rw',ierr)

The variable `iproc_str’ is a character array that is present on the device.

Is string concatenation not supported in an acceleration region?

  • Ron
1 Like

No, sorry. There’s no support for strings in general, only basic character arrays.

Though is “ffopen” a routine to open a file? There’s very limited I/O support on GPU (basically just unformatted print statements), so this couldn’t be used either.

Hi,

Will strings be supported in future releases?
Are they supported in the OpenACC Spec?

Yeah - I realized that the ffopen which calls “open” doesn’t work anyways so I am changing that code.
Good to know about the string limitation though.

  • Ron

Will strings be supported in future releases?

I don’t believe we have plans for it, at least not in the near term, since there isn’t a compelling use case.

Are they supported in the OpenACC Spec?

The Spec doesn’t define which language features are required to be supported for a target. That’s implementation dependent.