boostorg / boostorg/program_options

crash with one dash

Aperta
#123 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

please see attached GIF demonstrate crash with one dash i.e. to wit if an option is introduced w/ one dash instead of two exception is thrown . below is code executed .
```
#include
#include
#include
using namespace std;

const string option_flag = "O";
const string option_flag_description = string("an option");

const map options__description_map = {
{option_flag, option_flag_description},
};

int main(int argc, const char* argv[], const char* envp[])
{
boost::program_options::variables_map vm;
string macros;
boost::program_options::options_description options_description("bugyCode options");
options_description.add_options()
(option_flag.c_str(), boost::program_options::value(¯os), option_flag_description.c_str());

boost::program_options::store(boost::program_options::parse_command_line(argc, argv, options_description), vm);
boost::program_options::notify(vm);
return 0;
}
```
![crash with one dash demonstration](https://user-images.githubusercontent.com/48535920/230930473-cfa65ee5-d1f6-4d41-8853-ec1cd6405a7b.gif)

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia compilando ed eseguendo il riproduttore C++ fornito con l'opzione con un solo trattino per confermare il crash. Poi segui il punto di ingresso dell'analisi della riga di comando e confronta il comportamento con la sintassi delle opzioni documentata; il lavoro è completo quando il crash è stato risolto e il caso del singolo trattino ha un test di regressione.

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
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.