aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTaylor C. Richberger <Taywee@gmx.com>2017-12-12 19:58:24 -0700
committerTaylor C. Richberger <Taywee@gmx.com>2017-12-12 19:58:24 -0700
commitc5a60982ba01d765251c8f0aff6cf2c1c3fa4be8 (patch)
treeae147a6bd42bb18f48ac2d1a7acdf6d09f01b165
parentMerge pull request #52 from maPaydar/patch-1 (diff)
downloadargs.hxx-c5a60982ba01d765251c8f0aff6cf2c1c3fa4be8.tar.xz
replace explicit std::vector ParseCLI with template, reduce optimization
Optimization absolutely kills test build time. Dropping optimization level cuts compile time in less than half, and it still doesn't take long to run.
-rw-r--r--Makefile2
-rw-r--r--args.hxx3
2 files changed, 3 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 5cb8feb..dc4a5ea 100644
--- a/Makefile
+++ b/Makefile
@@ -7,7 +7,7 @@ FLAGS += -std=c++11
ifdef DEBUG
FLAGS += -ggdb -O0
else
-FLAGS += -O2
+FLAGS += -O0
endif
LIBS =
diff --git a/args.hxx b/args.hxx
index 67f53eb..37e86b4 100644
--- a/args.hxx
+++ b/args.hxx
@@ -2663,7 +2663,8 @@ namespace args
return ParseArgs(args) == std::end(args);
}
- bool ParseCLI(const std::vector<std::string> &args)
+ template <typename T>
+ bool ParseCLI(const T &args)
{
return ParseArgs(args) == std::end(args);
}