https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115559

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |burnus at gcc dot 
gnu.org
   Last reconfirmed|                            |2024-06-20
             Status|UNCONFIRMED                 |ASSIGNED

--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Created attachment 58472
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58472&action=edit
Patch that calls symtab_node::get_create in the FE

This patch does now likewise – calling symtab_node::get_create in the FE. Note:
It's get_create as 'get' returns NULL.

That seems to fix the issue for the example of comment 0. (Which obviously
fails at runtime as nothing is mapped).

For the OpenMP examples' testcase devices/sources/declare_target.6.f90 [marked
as compile-time only test; see link in comment 0] it fails during final linking
and shows messages like:
>  relocation truncated to fit: R_X86_64_32S against symbol `__m_dat_MOD_sv1' 
> defined in .bss section in a-declare_target.6.o

and
>  undefined reference to `s_output

The latter is clear – as the file calls but does not provide those functions.

And the former as well:
   integer, parameter :: N=100000000
   real :: sp(N), sv1(N), sv2(N)
   double precision :: dp(N), dv1(N), dv2(N)

Reply via email to