boostorg / boostorg/program_options
Why doesn't `allow_unregistered` work for me?
- Lenguaje dominante
- C++
- Estrellas
- 136
- Forks
- 117
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
I still get `too many positional options have been specified on the command line` on `run()`
The excerpt
```c++
boost::program_options::variables_map vm;
try{
auto parsed = boost::program_options::command_line_parser(rawArgs.argc, rawArgs.argv).options(oDesc).positional(pd).allow_unregistered().run(); //too many positional options have been specified on the command line
boost::program_options::store(parsed, vm);
boost::program_options::notify(vm);
auto rest = boost::program_options::collect_unrecognized(parsed.options, boost::program_options::collect_unrecognized_mode::include_positional);
} catch(std::exception &ex) {
PROCESS_CASE_OF_SYNTAX_ERROR_WHATABLE_EXCEPTION(ex);
}
```
The full source is here: https://github.com/HydrArgs/HydrArgs/blob/master/backends/BoostArgs.cpp
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza con el origen enlazado en backends/BoostArgs.cpp y sigue la configuración de command_line_parser a través de options(oDesc), positional(pd) y allow_unregistered(). Reproduce el fallo de run() con los rawArgs mostrados y determina después por qué se supera el límite de argumentos posicionales; se considera terminado cuando los argumentos no registrados previstos ya no provocan esta excepción.
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
- Necesita aclaración
- Aptitud para principiantes
- 30/100