24 "--print-rejected-preprocessed-source",
46 "--reduce-memory-overheads",
69 "--listing-lhs-width",
70 "--listing-lhs-width2",
71 "--listing-rhs-width",
72 "--listing-cont-lines",
84 for(
int i=1; i<argc; i++)
86 std::string argv_i=argv[i];
106 *o!=
nullptr && !found;
116 set(argv_i, argv[i+1]);
125 set(os, argv_i.substr(os.size()+1));
140 std::size_t equal_pos=argv_i.find(
'=');
142 std::string a_opts=
"hls";
143 if(argv_i.size()>2 &&
144 equal_pos!=std::string::npos &&
146 a_opts=argv_i.substr(2, equal_pos-2);
147 else if(argv_i.size()>2 &&
148 equal_pos==std::string::npos)
149 a_opts=argv_i.substr(2);
151 for(std::string::const_iterator
156 if(equal_pos==std::string::npos)
157 set(std::string(
"-a")+*it);
159 set(std::string(
"-a")+*it, argv_i.substr(equal_pos+1));
172 *o!=
nullptr && !found;
182 set(argv_i, argv[i+1]);
192 set(os, argv_i.substr(os.size()+1));
199 std::cerr <<
"Warning: uninterpreted as option '" << argv_i
const char * as_options_with_argument[]
const char * goto_as_options_with_argument[]
const char * as_options_without_argument[]
A special command line object for GNU Assembler Author: Michael Tautschnig Date: July 2016.
void set(const std::string &opt, const char *value) override
Set option option to value.
void add_infile_arg(const std::string &arg)
static bool in_list(const char *option, const char **list)
virtual bool parse(int argc, const char **argv, const char *optstring)
Parses a commandline according to a specification given in optstring.
void add_arg(const std::string &arg)
bool has_prefix(const std::string &s, const std::string &prefix)