Loading base/include/android-base/logging.h +2 −2 Original line number Diff line number Diff line Loading @@ -265,7 +265,7 @@ static constexpr bool kEnableDChecks = true; // MakeEagerEvaluator to infer the types of LHS and RHS. template <typename LHS, typename RHS> struct EagerEvaluator { EagerEvaluator(LHS l, RHS r) : lhs(l), rhs(r) { constexpr EagerEvaluator(LHS l, RHS r) : lhs(l), rhs(r) { } LHS lhs; RHS rhs; Loading @@ -273,7 +273,7 @@ struct EagerEvaluator { // Helper function for CHECK_xx. template <typename LHS, typename RHS> static inline EagerEvaluator<LHS, RHS> MakeEagerEvaluator(LHS lhs, RHS rhs) { constexpr EagerEvaluator<LHS, RHS> MakeEagerEvaluator(LHS lhs, RHS rhs) { return EagerEvaluator<LHS, RHS>(lhs, rhs); } Loading base/include/android-base/macros.h +5 −23 Original line number Diff line number Diff line Loading @@ -41,18 +41,9 @@ // Note, that most uses of DISALLOW_ASSIGN and DISALLOW_COPY are broken // semantically, one should either use disallow both or neither. Try to // avoid these in new code. // // When building with C++11 toolchains, just use the language support // for explicitly deleted methods. #if __cplusplus >= 201103L #define DISALLOW_COPY_AND_ASSIGN(TypeName) \ TypeName(const TypeName&) = delete; \ void operator=(const TypeName&) = delete #else #define DISALLOW_COPY_AND_ASSIGN(TypeName) \ TypeName(const TypeName&); \ void operator=(const TypeName&) #endif // A macro to disallow all the implicit constructors, namely the // default constructor, copy constructor and operator= functions. Loading @@ -60,18 +51,9 @@ // This should be used in the private: declarations for a class // that wants to prevent anyone from instantiating it. This is // especially useful for classes containing only static methods. // // When building with C++11 toolchains, just use the language support // for explicitly deleted methods. #if __cplusplus >= 201103L #define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ TypeName() = delete; \ DISALLOW_COPY_AND_ASSIGN(TypeName) #else #define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ TypeName(); \ DISALLOW_COPY_AND_ASSIGN(TypeName) #endif // The arraysize(arr) macro returns the # of elements in an array arr. // The expression is a compile-time constant, and therefore can be Loading Loading @@ -174,10 +156,10 @@ void UNUSED(const T&...) { // only if there are no statements on the execution path between it and the // next switch label. // // When compiled with clang in C++11 mode, the FALLTHROUGH_INTENDED macro is // expanded to [[clang::fallthrough]] attribute, which is analysed when // performing switch labels fall-through diagnostic ('-Wimplicit-fallthrough'). // See clang documentation on language extensions for details: // When compiled with clang, the FALLTHROUGH_INTENDED macro is expanded to // [[clang::fallthrough]] attribute, which is analysed when performing switch // labels fall-through diagnostic ('-Wimplicit-fallthrough'). See clang // documentation on language extensions for details: // http://clang.llvm.org/docs/LanguageExtensions.html#clang__fallthrough // // When used with unsupported compilers, the FALLTHROUGH_INTENDED macro has no Loading @@ -185,7 +167,7 @@ void UNUSED(const T&...) { // // In either case this macro has no effect on runtime behavior and performance // of code. #if defined(__clang__) && __cplusplus >= 201103L && defined(__has_warning) #if defined(__clang__) && defined(__has_warning) #if __has_feature(cxx_attributes) && __has_warning("-Wimplicit-fallthrough") #define FALLTHROUGH_INTENDED [[clang::fallthrough]] // NOLINT #endif Loading Loading
base/include/android-base/logging.h +2 −2 Original line number Diff line number Diff line Loading @@ -265,7 +265,7 @@ static constexpr bool kEnableDChecks = true; // MakeEagerEvaluator to infer the types of LHS and RHS. template <typename LHS, typename RHS> struct EagerEvaluator { EagerEvaluator(LHS l, RHS r) : lhs(l), rhs(r) { constexpr EagerEvaluator(LHS l, RHS r) : lhs(l), rhs(r) { } LHS lhs; RHS rhs; Loading @@ -273,7 +273,7 @@ struct EagerEvaluator { // Helper function for CHECK_xx. template <typename LHS, typename RHS> static inline EagerEvaluator<LHS, RHS> MakeEagerEvaluator(LHS lhs, RHS rhs) { constexpr EagerEvaluator<LHS, RHS> MakeEagerEvaluator(LHS lhs, RHS rhs) { return EagerEvaluator<LHS, RHS>(lhs, rhs); } Loading
base/include/android-base/macros.h +5 −23 Original line number Diff line number Diff line Loading @@ -41,18 +41,9 @@ // Note, that most uses of DISALLOW_ASSIGN and DISALLOW_COPY are broken // semantically, one should either use disallow both or neither. Try to // avoid these in new code. // // When building with C++11 toolchains, just use the language support // for explicitly deleted methods. #if __cplusplus >= 201103L #define DISALLOW_COPY_AND_ASSIGN(TypeName) \ TypeName(const TypeName&) = delete; \ void operator=(const TypeName&) = delete #else #define DISALLOW_COPY_AND_ASSIGN(TypeName) \ TypeName(const TypeName&); \ void operator=(const TypeName&) #endif // A macro to disallow all the implicit constructors, namely the // default constructor, copy constructor and operator= functions. Loading @@ -60,18 +51,9 @@ // This should be used in the private: declarations for a class // that wants to prevent anyone from instantiating it. This is // especially useful for classes containing only static methods. // // When building with C++11 toolchains, just use the language support // for explicitly deleted methods. #if __cplusplus >= 201103L #define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ TypeName() = delete; \ DISALLOW_COPY_AND_ASSIGN(TypeName) #else #define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ TypeName(); \ DISALLOW_COPY_AND_ASSIGN(TypeName) #endif // The arraysize(arr) macro returns the # of elements in an array arr. // The expression is a compile-time constant, and therefore can be Loading Loading @@ -174,10 +156,10 @@ void UNUSED(const T&...) { // only if there are no statements on the execution path between it and the // next switch label. // // When compiled with clang in C++11 mode, the FALLTHROUGH_INTENDED macro is // expanded to [[clang::fallthrough]] attribute, which is analysed when // performing switch labels fall-through diagnostic ('-Wimplicit-fallthrough'). // See clang documentation on language extensions for details: // When compiled with clang, the FALLTHROUGH_INTENDED macro is expanded to // [[clang::fallthrough]] attribute, which is analysed when performing switch // labels fall-through diagnostic ('-Wimplicit-fallthrough'). See clang // documentation on language extensions for details: // http://clang.llvm.org/docs/LanguageExtensions.html#clang__fallthrough // // When used with unsupported compilers, the FALLTHROUGH_INTENDED macro has no Loading @@ -185,7 +167,7 @@ void UNUSED(const T&...) { // // In either case this macro has no effect on runtime behavior and performance // of code. #if defined(__clang__) && __cplusplus >= 201103L && defined(__has_warning) #if defined(__clang__) && defined(__has_warning) #if __has_feature(cxx_attributes) && __has_warning("-Wimplicit-fallthrough") #define FALLTHROUGH_INTENDED [[clang::fallthrough]] // NOLINT #endif Loading