blob: 0e26bf2bc6629b755f916b508f119b7bb866761d [file] [log] [blame]
// PR c++/103049
// P0849R8 - auto(x)
// { dg-do compile { target c++23 } }
class cmdline_parser
{
public:
cmdline_parser(char const*);
auto add_option(char const*, char const*) & -> cmdline_parser &;
auto add_option(char const*, char const*) && -> cmdline_parser &&;
void parse(int, char**);
};
int main(int argc, char *argv[])
{
auto cmdline = cmdline_parser("driver");
cmdline.add_option("-h", "show help messages")
.add_option("-v", "show version");
auto internal = auto(cmdline).add_option("--logging-level", "set logging level to 1-3")
.add_option("--dump-full", "do not minimize dump");
internal.parse(argc, argv);
}