diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2015-01-15 15:13:43 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2015-01-15 15:13:43 +0000 |
commit | 096af34b7cf9920da660a3084b5485ba97059f35 (patch) | |
tree | 8f2a32c53687aba186ca91e2b782fa9bb57e4d44 /lib/sanitizer_common/sanitizer_flags.h | |
parent | 05fe0575f84ea38fa2eca8a5bdea5c77f3217cda (diff) |
[sanitizer] Flag parser rewrite.
The new parser is a lot stricter about syntax, reports unrecognized
flags, and will make it easier to implemented some of the planned features.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@226169 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/sanitizer_common/sanitizer_flags.h')
-rw-r--r-- | lib/sanitizer_common/sanitizer_flags.h | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/lib/sanitizer_common/sanitizer_flags.h b/lib/sanitizer_common/sanitizer_flags.h index 9f0352a57..90f3bbfbf 100644 --- a/lib/sanitizer_common/sanitizer_flags.h +++ b/lib/sanitizer_common/sanitizer_flags.h @@ -18,22 +18,12 @@ namespace __sanitizer { -void ParseFlag(const char *env, bool *flag, - const char *name, const char *descr); -void ParseFlag(const char *env, int *flag, - const char *name, const char *descr); -void ParseFlag(const char *env, uptr *flag, - const char *name, const char *descr); -void ParseFlag(const char *env, const char **flag, - const char *name, const char *descr); - struct CommonFlags { #define COMMON_FLAG(Type, Name, DefaultValue, Description) Type Name; #include "sanitizer_flags.inc" #undef COMMON_FLAG void SetDefaults(); - void ParseFromString(const char *str); void CopyFrom(const CommonFlags &other); }; @@ -47,10 +37,6 @@ inline void SetCommonFlagsDefaults() { common_flags_dont_use.SetDefaults(); } -inline void ParseCommonFlagsFromString(const char *str) { - common_flags_dont_use.ParseFromString(str); -} - // This function can only be used to setup tool-specific overrides for // CommonFlags defaults. Generally, it should only be used right after // SetCommonFlagsDefaults(), but before ParseCommonFlagsFromString(), and @@ -60,8 +46,9 @@ inline void OverrideCommonFlags(const CommonFlags &cf) { common_flags_dont_use.CopyFrom(cf); } -void PrintFlagDescriptions(); - +class FlagParser; +void RegisterCommonFlags(FlagParser *parser, + CommonFlags *cf = &common_flags_dont_use); } // namespace __sanitizer #endif // SANITIZER_FLAGS_H |