mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-13 22:24:07 +00:00
Add support for a character after a command line option. Like '-Os'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70437 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -679,6 +679,28 @@ public:
|
||||
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class basic_parser<std::string>);
|
||||
|
||||
//--------------------------------------------------
|
||||
// parser<char>
|
||||
//
|
||||
template<>
|
||||
class parser<char> : public basic_parser<char> {
|
||||
public:
|
||||
// parse - Return true on error.
|
||||
bool parse(Option &, const char *, const std::string &Arg,
|
||||
char &Value) {
|
||||
Value = Arg[0];
|
||||
return false;
|
||||
}
|
||||
|
||||
// getValueName - Overload in subclass to provide a better default value.
|
||||
virtual const char *getValueName() const { return "char"; }
|
||||
|
||||
// An out-of-line virtual method to provide a 'home' for this class.
|
||||
virtual void anchor();
|
||||
};
|
||||
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class basic_parser<char>);
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// applicator class - This class is used because we must use partial
|
||||
// specialization to handle literal string arguments specially (const char* does
|
||||
@ -923,6 +945,7 @@ public:
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class opt<unsigned>);
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class opt<int>);
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class opt<std::string>);
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class opt<char>);
|
||||
EXTERN_TEMPLATE_INSTANTIATION(class opt<bool>);
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
Reference in New Issue
Block a user