boostorg / boostorg/program_options

program_options.hpp fails when imported as a header unit (MSVC 2022).

Aperta
#114 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C++
Stelle
136
Fork
117
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

The program fails to compile when trying to import `program_options.hpp` as a header unit in Visual Studio 2022 (C++20).

main.cpp
```
import ;

int main(int argc, char** argv)
{
namespace po = boost::program_options;
po::options_description desc;
desc.add_options()
("stringtest", po::value()->implicit_value("test"), "string test")
;

return 0;
}
```

You'll get the following error:
`Error - C3084 - 'boost::exception::~exception': a destructor cannot be 'abstract' - solution - E:\Projects\CPP\boost\boost\exception\exception.hpp - 297`

I haven't had any troubles with any other boost headers. This is the only one I've run into with this issue. This was tested with the latest master branch.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia compilando il main.cpp fornito con MSVC 2022 in modalità C++20 e importando boost/program_options.hpp come header unit. Esamina boost/exception/exception.hpp intorno alla riga 297 confrontando il fallimento della header unit con un include normale. Il lavoro è completato quando l’esempio viene compilato correttamente con l’importazione della header unit.

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

Valutazione

Stack tecnologico
cpp
Ambito
cli
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.