Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

NVIDIA C++ compiler -cuda option triggers incompatible redefiniton of BOOST_COMPILER

Aperta
#428 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
cpp
Ambito
compilers

Direzione di ricerca

Iniziate confrontando config/include/boost/config/compiler/pgi.hpp e config/include/boost/config/compiler/nvcc.hpp, concentrandovi su come CUDACC, __PGI e __NVCOMPILER selezionano la configurazione del compilatore. Riproducete il problema con nvc++ e -cuda; il lavoro è completato quando non si verifica più l’avviso di ridefinizione incompatibile di BOOST_COMPILER.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Passing the -cuda option to nvc++ makes it define the __CUDACC__ macro, which in turn leads to a warning from Boost:

"config/include/boost/config/compiler/pgi.hpp", line 12: warning: incompatible redefinition of macro "BOOST_COMPILER" (declared at line 11 of "config/include/boost/config/compiler/nvcc.hpp")
  #define BOOST_COMPILER "PGI compiler version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
          ^

(tested with today's develop, c11afa5ffa7c8612cf8ae32ed65be3b2863153a9, and the 1.78 release).

nvc++ also defines macros such as __PGI and __NVCOMPILER.

Lingua principale
C++
Stelle
80
Fork
184
Merge medio
4g 6h
PR unite (30g)
1

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di boostorg/config

Tutte le issue di boostorg/config

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.