1
0
mirror of https://github.com/CLIUtils/CLI11.git synced 2025-05-03 14:03:52 +00:00

GCC 4.7 can't tell a function from a string. Separated and fixed.

This commit is contained in:
Henry Fredrick Schreiner 2018-05-03 15:59:01 +02:00 committed by Henry Schreiner
parent e7483afc41
commit b80a0046fc
2 changed files with 6 additions and 6 deletions

View File

@ -538,7 +538,7 @@ class App {
}; };
Option *opt = add_option(name, fun, description, false); Option *opt = add_option(name, fun, description, false);
opt->set_type_name( opt->set_type_name_fn(
[&options]() { return std::string(detail::type_name<T>()) + " in {" + detail::join(options) + "}"; }); [&options]() { return std::string(detail::type_name<T>()) + " in {" + detail::join(options) + "}"; });
return opt; return opt;
@ -589,7 +589,7 @@ class App {
}; };
Option *opt = add_option(name, fun, description, defaulted); Option *opt = add_option(name, fun, description, defaulted);
opt->set_type_name( opt->set_type_name_fn(
[&options]() { return std::string(detail::type_name<T>()) + " in {" + detail::join(options) + "}"; }); [&options]() { return std::string(detail::type_name<T>()) + " in {" + detail::join(options) + "}"; });
if(defaulted) { if(defaulted) {
std::stringstream out; std::stringstream out;
@ -648,7 +648,7 @@ class App {
}; };
Option *opt = add_option(name, fun, description, false); Option *opt = add_option(name, fun, description, false);
opt->set_type_name([&options]() { opt->set_type_name_fn([&options]() {
return std::string(detail::type_name<std::string>()) + " in {" + detail::join(options) + "}"; return std::string(detail::type_name<std::string>()) + " in {" + detail::join(options) + "}";
}); });
@ -708,7 +708,7 @@ class App {
}; };
Option *opt = add_option(name, fun, description, defaulted); Option *opt = add_option(name, fun, description, defaulted);
opt->set_type_name([&options]() { opt->set_type_name_fn([&options]() {
return std::string(detail::type_name<std::string>()) + " in {" + detail::join(options) + "}"; return std::string(detail::type_name<std::string>()) + " in {" + detail::join(options) + "}";
}); });
if(defaulted) { if(defaulted) {

View File

@ -631,11 +631,11 @@ class Option : public OptionBase<Option> {
/// Set the type name displayed on this option /// Set the type name displayed on this option
void set_type_name(std::string typeval) { void set_type_name(std::string typeval) {
typeval_ = [typeval]() { return typeval; }; set_type_name_fn([typeval]() { return typeval; });
} }
/// Set the type function to run when displayed on this option /// Set the type function to run when displayed on this option
void set_type_name(std::function<std::string()> typefun) { typeval_ = typefun; } void set_type_name_fn(std::function<std::string()> typefun) { typeval_ = typefun; }
/// Get the typename for this option /// Get the typename for this option
std::string get_type_name() const { return typeval_(); } std::string get_type_name() const { return typeval_(); }