Export of internal Abseil changes
-- 24162e64040e89f174531fa78fc0ff43c3a67da4 by Abseil Team <absl-team@google.com>: Make ABSL_RETIRED_FLAG behave consistently with ABSL_FLAG. Before the change: ABSL_RETIRED_FLAG does not compile when there are competing ctors in the type, even when ABSL_FLAG does. After the change: ABSL_RETIRED_FLAG compiles when ABSL_FLAG does. PiperOrigin-RevId: 286437395 -- 870d4cb4d114813e9cefe30d26d020b0fdcdc4b4 by Tom Manshreck <shreck@google.com>: Add docs on bind_front PiperOrigin-RevId: 286433540 -- b0c328bd9bb64e0382f942f93b85054229dafeac by Tom Manshreck <shreck@google.com>: Specify the format for LogSeverity flags PiperOrigin-RevId: 286402811 GitOrigin-RevId: 24162e64040e89f174531fa78fc0ff43c3a67da4 Change-Id: I89785145d049fee49c6b9cf3357893ece9a6231c
This commit is contained in:
parent
7bd1935dcb
commit
ad904b6cd3
5 changed files with 127 additions and 34 deletions
|
|
@ -384,11 +384,19 @@ ABSL_NAMESPACE_END
|
|||
//
|
||||
// `default_value` is only used as a double check on the type. `explanation` is
|
||||
// unused.
|
||||
//
|
||||
// ABSL_RETIRED_FLAG support omitting the default value for default
|
||||
// constructible value type, so that users can delete the code generatring this
|
||||
// value.
|
||||
//
|
||||
// TODO(rogeeff): Return an anonymous struct instead of bool, and place it into
|
||||
// the unnamed namespace.
|
||||
#define ABSL_RETIRED_FLAG(type, flagname, default_value, explanation) \
|
||||
ABSL_ATTRIBUTE_UNUSED static const bool ignored_##flagname = \
|
||||
([] { return type(default_value); }, \
|
||||
ABSL_ATTRIBUTE_UNUSED static const bool ignored_##flagname = \
|
||||
([] { \
|
||||
return absl::flags_internal::MakeFromDefaultValueOrEmpty<type>( \
|
||||
default_value); \
|
||||
}, \
|
||||
absl::flags_internal::RetiredFlag<type>(#flagname))
|
||||
|
||||
#endif // ABSL_FLAGS_FLAG_H_
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue