boostorg / boostorg/program_options

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

Abierto
#114 3 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
C++
Estrellas
136
Forks
117
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

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.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza compilando el main.cpp proporcionado con MSVC 2022 en modo C++20 e importando boost/program_options.hpp como header unit. Inspecciona boost/exception/exception.hpp alrededor de la línea 297 mientras comparas el fallo de la header unit con un include normal. Se considera terminado cuando el ejemplo compila correctamente con la importación como header unit.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
cpp
Área
cli
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.