From 9358dc8d1edae6f9279647084e768c6da5715f73 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Wed, 4 Mar 2009 22:40:08 +0000 Subject: [PATCH] Driver: Add ArgList::{append, getArgString} git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66089 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/clang/Driver/ArgList.h | 6 ++++++ lib/Driver/ArgList.cpp | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/include/clang/Driver/ArgList.h b/include/clang/Driver/ArgList.h index 9eefa8a127..c4f3bbc1a4 100644 --- a/include/clang/Driver/ArgList.h +++ b/include/clang/Driver/ArgList.h @@ -48,6 +48,12 @@ namespace driver { const_iterator begin() const { return Args.begin(); } const_iterator end() const { return Args.end(); } + + /// append - Append \arg A to the arg list, taking ownership. + void append(Arg *A); + + /// getArgString - Return the input argument string at \arg Index. + const char *getArgString(unsigned Index) const { return ArgStrings[Index]; } }; } // end namespace driver } // end namespace clang diff --git a/lib/Driver/ArgList.cpp b/lib/Driver/ArgList.cpp index a8b00bb750..a45e9d67b2 100644 --- a/lib/Driver/ArgList.cpp +++ b/lib/Driver/ArgList.cpp @@ -9,6 +9,7 @@ #include "clang/Driver/ArgList.h" #include "clang/Driver/Arg.h" +#include "clang/Driver/Option.h" using namespace clang::driver; @@ -20,3 +21,11 @@ ArgList::~ArgList() { for (iterator it = begin(), ie = end(); it != ie; ++ie) delete *it; } + +void ArgList::append(Arg *A) { + if (A->getOption().isUnsupported()) { + assert(0 && "FIXME: unsupported unsupported."); + } + + Args.push_back(A); +} -- 2.50.1