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

Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW
                 CC|                            |jakub at gcc dot gnu.org,
                   |                            |tschwinge at gcc dot gnu.org
   Last reconfirmed|                            |2020-05-26
            Summary|[10 Regression] binary      |Offload compilation fails
                   |built with -fopenacc fails  |when not all offload
                   |to run when not all offload |compilers are installed
                   |compilers are installed     |that were configured
                   |that were configured        |

--- Comment #1 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
So the report is not "binary built with -fopenacc fails to run when [...]" but
rather "compilation with -fopenacc fails when [...]"?  And, same for '-fopenmp'
for OpenMP 'target' offloading?  So I'm changing the Summary to: "Offload
compilation fails when [...]".  (Please adjust if I've misunderstood.)

I don't think this is a regression: wouldn't you've gotten the same behavior
already before GCC 10 added GCN offloading, for example, when you had built GCC
with '--enable-offload-targets=nvptx-none' but then didn't have the nvptx
offloading compiler installed?  I'm thus removing the "regression" tag. 
(Please put it back if I've misunderstood.)


I agree that the current driver (?) behavior is not ideal.  I suppose the
default offload targets configuration (unless overridden by '-foffload') should
be made so that if an offload compiler is not present, it is silently skipped. 
That is, without printing a warning (as has been suggested), as that would
produce a lot of noise.  If an offload target has been explicitly requested via
'-foffload=[target]', then that should result in a hard error, of course, if
the respective offload compiler is not available.

Reply via email to