boostorg / boostorg/program_options

More robust common_config_file_iterator

Ouverte
#67 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
C++
Étoiles
136
Forks
117
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

common_config_file_iterator::common_config_file_iterator has a little problem: One of the args is std::set, which is incompatible between libc++ and libstdc++. As a result, the function, if compiled with {GCC, Clang}, is incompatible with {Clang, GCC). This can be fixed without breaking anything by moving it to the header part and declaring it static. What are your opinions about it?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Localisez la déclaration et la définition de common_config_file_iterator, puis examinez comment son argument std::set traverse l’interface compilée. Comparez les builds avec GCC et Clang et vérifiez que le déplacement de l’implémentation dans le header et sa déclaration en tant que static préservent la compatibilité. Le travail est terminé lorsque l’itérateur peut être utilisé avec ces combinaisons de compilateurs sans l’incompatibilité signalée.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cpp
Domaine
cli, compilers
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.