re2 1.23.0 → 1.23.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (280) hide show
  1. package/README.md +2 -0
  2. package/binding.gyp +3 -2
  3. package/package.json +5 -5
  4. package/vendor/abseil-cpp/CMake/AbseilDll.cmake +25 -4
  5. package/vendor/abseil-cpp/CMake/AbseilHelpers.cmake +6 -1
  6. package/vendor/abseil-cpp/CMakeLists.txt +2 -2
  7. package/vendor/abseil-cpp/MODULE.bazel +2 -2
  8. package/vendor/abseil-cpp/absl/algorithm/BUILD.bazel +0 -1
  9. package/vendor/abseil-cpp/absl/algorithm/CMakeLists.txt +0 -2
  10. package/vendor/abseil-cpp/absl/algorithm/container.h +191 -140
  11. package/vendor/abseil-cpp/absl/algorithm/container_test.cc +818 -0
  12. package/vendor/abseil-cpp/absl/base/BUILD.bazel +44 -5
  13. package/vendor/abseil-cpp/absl/base/CMakeLists.txt +42 -3
  14. package/vendor/abseil-cpp/absl/base/attributes.h +5 -1
  15. package/vendor/abseil-cpp/absl/base/call_once_test.cc +10 -10
  16. package/vendor/abseil-cpp/absl/base/casts.cc +61 -0
  17. package/vendor/abseil-cpp/absl/base/casts.h +128 -2
  18. package/vendor/abseil-cpp/absl/base/casts_test.cc +151 -0
  19. package/vendor/abseil-cpp/absl/base/config.h +13 -37
  20. package/vendor/abseil-cpp/absl/base/internal/dynamic_annotations.h +1 -1
  21. package/vendor/abseil-cpp/absl/base/internal/iterator_traits.h +4 -0
  22. package/vendor/abseil-cpp/absl/base/internal/nullability_traits.h +71 -0
  23. package/vendor/abseil-cpp/absl/base/internal/nullability_traits_test.cc +98 -0
  24. package/vendor/abseil-cpp/absl/base/internal/raw_logging.cc +3 -4
  25. package/vendor/abseil-cpp/absl/base/internal/spinlock.cc +13 -7
  26. package/vendor/abseil-cpp/absl/base/internal/spinlock.h +16 -11
  27. package/vendor/abseil-cpp/absl/base/internal/strerror_test.cc +2 -1
  28. package/vendor/abseil-cpp/absl/base/internal/sysinfo.cc +0 -9
  29. package/vendor/abseil-cpp/absl/base/internal/sysinfo_test.cc +0 -6
  30. package/vendor/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +1 -1
  31. package/vendor/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +1 -1
  32. package/vendor/abseil-cpp/absl/base/macros.h +40 -17
  33. package/vendor/abseil-cpp/absl/base/nullability.h +1 -1
  34. package/vendor/abseil-cpp/absl/base/optimization.h +1 -3
  35. package/vendor/abseil-cpp/absl/base/options.h +1 -27
  36. package/vendor/abseil-cpp/absl/base/spinlock_test_common.cc +5 -8
  37. package/vendor/abseil-cpp/absl/cleanup/cleanup.h +4 -0
  38. package/vendor/abseil-cpp/absl/container/BUILD.bazel +195 -2
  39. package/vendor/abseil-cpp/absl/container/CMakeLists.txt +136 -2
  40. package/vendor/abseil-cpp/absl/container/btree_map.h +56 -6
  41. package/vendor/abseil-cpp/absl/container/btree_set.h +52 -6
  42. package/vendor/abseil-cpp/absl/container/btree_test.cc +107 -1
  43. package/vendor/abseil-cpp/absl/container/chunked_queue.h +755 -0
  44. package/vendor/abseil-cpp/absl/container/chunked_queue_benchmark.cc +386 -0
  45. package/vendor/abseil-cpp/absl/container/chunked_queue_test.cc +768 -0
  46. package/vendor/abseil-cpp/absl/container/fixed_array.h +4 -6
  47. package/vendor/abseil-cpp/absl/container/flat_hash_map.h +16 -6
  48. package/vendor/abseil-cpp/absl/container/flat_hash_map_test.cc +1 -2
  49. package/vendor/abseil-cpp/absl/container/flat_hash_set.h +16 -6
  50. package/vendor/abseil-cpp/absl/container/flat_hash_set_test.cc +0 -2
  51. package/vendor/abseil-cpp/absl/container/inlined_vector.h +12 -4
  52. package/vendor/abseil-cpp/absl/container/inlined_vector_test.cc +21 -0
  53. package/vendor/abseil-cpp/absl/container/internal/btree_container.h +14 -5
  54. package/vendor/abseil-cpp/absl/container/internal/chunked_queue.h +173 -0
  55. package/vendor/abseil-cpp/absl/container/internal/common.h +51 -0
  56. package/vendor/abseil-cpp/absl/container/internal/container_memory.h +7 -1
  57. package/vendor/abseil-cpp/absl/container/internal/container_memory_test.cc +11 -0
  58. package/vendor/abseil-cpp/absl/container/internal/hash_generator_testing.cc +0 -2
  59. package/vendor/abseil-cpp/absl/container/internal/hash_generator_testing.h +1 -2
  60. package/vendor/abseil-cpp/absl/container/internal/hash_policy_testing.h +0 -14
  61. package/vendor/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +11 -8
  62. package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +3 -4
  63. package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler.h +23 -6
  64. package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler_test.cc +31 -15
  65. package/vendor/abseil-cpp/absl/container/internal/heterogeneous_lookup_testing.h +80 -0
  66. package/vendor/abseil-cpp/absl/container/internal/inlined_vector.h +4 -12
  67. package/vendor/abseil-cpp/absl/container/internal/raw_hash_map.h +35 -10
  68. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set.cc +149 -23
  69. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set.h +120 -126
  70. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_allocator_test.cc +4 -0
  71. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_benchmark.cc +8 -0
  72. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_probe_benchmark.cc +14 -59
  73. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_test.cc +111 -22
  74. package/vendor/abseil-cpp/absl/container/internal/unordered_map_constructor_test.h +53 -112
  75. package/vendor/abseil-cpp/absl/container/internal/unordered_map_lookup_test.h +10 -15
  76. package/vendor/abseil-cpp/absl/container/internal/unordered_map_members_test.h +3 -3
  77. package/vendor/abseil-cpp/absl/container/internal/unordered_map_modifiers_test.h +45 -61
  78. package/vendor/abseil-cpp/absl/container/internal/unordered_set_constructor_test.h +53 -112
  79. package/vendor/abseil-cpp/absl/container/internal/unordered_set_lookup_test.h +6 -9
  80. package/vendor/abseil-cpp/absl/container/internal/unordered_set_members_test.h +3 -3
  81. package/vendor/abseil-cpp/absl/container/internal/unordered_set_modifiers_test.h +25 -31
  82. package/vendor/abseil-cpp/absl/container/linked_hash_map.h +666 -0
  83. package/vendor/abseil-cpp/absl/container/linked_hash_map_benchmark.cc +140 -0
  84. package/vendor/abseil-cpp/absl/container/linked_hash_map_test.cc +987 -0
  85. package/vendor/abseil-cpp/absl/container/linked_hash_set.h +527 -0
  86. package/vendor/abseil-cpp/absl/container/linked_hash_set_benchmark.cc +84 -0
  87. package/vendor/abseil-cpp/absl/container/linked_hash_set_test.cc +947 -0
  88. package/vendor/abseil-cpp/absl/container/node_hash_map.h +17 -6
  89. package/vendor/abseil-cpp/absl/container/node_hash_set.h +16 -5
  90. package/vendor/abseil-cpp/absl/container/node_hash_set_test.cc +1 -2
  91. package/vendor/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake +79 -0
  92. package/vendor/abseil-cpp/absl/copts/GENERATED_copts.bzl +79 -0
  93. package/vendor/abseil-cpp/absl/copts/copts.py +17 -4
  94. package/vendor/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +67 -13
  95. package/vendor/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +4 -2
  96. package/vendor/abseil-cpp/absl/debugging/BUILD.bazel +31 -0
  97. package/vendor/abseil-cpp/absl/debugging/CMakeLists.txt +34 -0
  98. package/vendor/abseil-cpp/absl/debugging/failure_signal_handler.cc +2 -2
  99. package/vendor/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer.cc +118 -0
  100. package/vendor/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer.h +71 -0
  101. package/vendor/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer_test.cc +97 -0
  102. package/vendor/abseil-cpp/absl/debugging/internal/demangle.cc +2 -2
  103. package/vendor/abseil-cpp/absl/debugging/internal/elf_mem_image.h +4 -4
  104. package/vendor/abseil-cpp/absl/debugging/internal/examine_stack.cc +4 -0
  105. package/vendor/abseil-cpp/absl/debugging/internal/examine_stack.h +7 -0
  106. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +1 -1
  107. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +0 -7
  108. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +3 -2
  109. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +2 -1
  110. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +8 -3
  111. package/vendor/abseil-cpp/absl/debugging/internal/symbolize.h +2 -2
  112. package/vendor/abseil-cpp/absl/debugging/stacktrace.cc +35 -67
  113. package/vendor/abseil-cpp/absl/debugging/stacktrace.h +3 -0
  114. package/vendor/abseil-cpp/absl/debugging/stacktrace_benchmark.cc +24 -1
  115. package/vendor/abseil-cpp/absl/debugging/stacktrace_test.cc +39 -15
  116. package/vendor/abseil-cpp/absl/debugging/symbolize_emscripten.inc +4 -17
  117. package/vendor/abseil-cpp/absl/debugging/symbolize_test.cc +25 -40
  118. package/vendor/abseil-cpp/absl/debugging/symbolize_win32.inc +2 -4
  119. package/vendor/abseil-cpp/absl/flags/BUILD.bazel +1 -0
  120. package/vendor/abseil-cpp/absl/flags/declare.h +9 -0
  121. package/vendor/abseil-cpp/absl/flags/flag.h +2 -1
  122. package/vendor/abseil-cpp/absl/flags/internal/commandlineflag.h +1 -1
  123. package/vendor/abseil-cpp/absl/flags/internal/flag.cc +3 -2
  124. package/vendor/abseil-cpp/absl/flags/marshalling.cc +1 -16
  125. package/vendor/abseil-cpp/absl/flags/parse.cc +4 -2
  126. package/vendor/abseil-cpp/absl/flags/parse_test.cc +1 -1
  127. package/vendor/abseil-cpp/absl/flags/reflection.cc +4 -3
  128. package/vendor/abseil-cpp/absl/functional/BUILD.bazel +4 -0
  129. package/vendor/abseil-cpp/absl/functional/CMakeLists.txt +4 -0
  130. package/vendor/abseil-cpp/absl/functional/any_invocable.h +3 -1
  131. package/vendor/abseil-cpp/absl/functional/function_ref.h +125 -20
  132. package/vendor/abseil-cpp/absl/functional/function_ref_test.cc +122 -9
  133. package/vendor/abseil-cpp/absl/functional/internal/any_invocable.h +13 -2
  134. package/vendor/abseil-cpp/absl/functional/internal/function_ref.h +42 -4
  135. package/vendor/abseil-cpp/absl/hash/hash_benchmark.cc +11 -0
  136. package/vendor/abseil-cpp/absl/hash/hash_test.cc +5 -2
  137. package/vendor/abseil-cpp/absl/hash/internal/hash.cc +184 -53
  138. package/vendor/abseil-cpp/absl/hash/internal/hash.h +116 -10
  139. package/vendor/abseil-cpp/absl/hash/internal/low_level_hash_test.cc +43 -4
  140. package/vendor/abseil-cpp/absl/log/BUILD.bazel +2 -0
  141. package/vendor/abseil-cpp/absl/log/CMakeLists.txt +35 -1
  142. package/vendor/abseil-cpp/absl/log/check_test_impl.inc +59 -4
  143. package/vendor/abseil-cpp/absl/log/die_if_null.cc +3 -1
  144. package/vendor/abseil-cpp/absl/log/die_if_null.h +24 -3
  145. package/vendor/abseil-cpp/absl/log/internal/BUILD.bazel +31 -1
  146. package/vendor/abseil-cpp/absl/log/internal/check_impl.h +2 -1
  147. package/vendor/abseil-cpp/absl/log/internal/check_op.cc +3 -1
  148. package/vendor/abseil-cpp/absl/log/internal/check_op.h +44 -18
  149. package/vendor/abseil-cpp/absl/log/internal/conditions.h +38 -35
  150. package/vendor/abseil-cpp/absl/log/internal/container.h +312 -0
  151. package/vendor/abseil-cpp/absl/log/internal/container_test.cc +254 -0
  152. package/vendor/abseil-cpp/absl/log/internal/log_impl.h +108 -110
  153. package/vendor/abseil-cpp/absl/log/internal/log_message.cc +5 -2
  154. package/vendor/abseil-cpp/absl/log/internal/log_message.h +5 -1
  155. package/vendor/abseil-cpp/absl/log/internal/strip.h +30 -31
  156. package/vendor/abseil-cpp/absl/log/internal/vlog_config.cc +19 -19
  157. package/vendor/abseil-cpp/absl/log/internal/vlog_config.h +0 -1
  158. package/vendor/abseil-cpp/absl/log/log.h +2 -2
  159. package/vendor/abseil-cpp/absl/meta/BUILD.bazel +51 -0
  160. package/vendor/abseil-cpp/absl/meta/CMakeLists.txt +46 -0
  161. package/vendor/abseil-cpp/absl/meta/internal/constexpr_testing.h +73 -0
  162. package/vendor/abseil-cpp/absl/meta/internal/constexpr_testing_test.cc +40 -0
  163. package/vendor/abseil-cpp/absl/meta/internal/requires.h +67 -0
  164. package/vendor/abseil-cpp/absl/meta/internal/requires_test.cc +66 -0
  165. package/vendor/abseil-cpp/absl/meta/type_traits.h +42 -1
  166. package/vendor/abseil-cpp/absl/meta/type_traits_test.cc +14 -0
  167. package/vendor/abseil-cpp/absl/numeric/int128.h +41 -21
  168. package/vendor/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +16 -22
  169. package/vendor/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +5 -7
  170. package/vendor/abseil-cpp/absl/numeric/int128_test.cc +52 -5
  171. package/vendor/abseil-cpp/absl/profiling/BUILD.bazel +1 -0
  172. package/vendor/abseil-cpp/absl/profiling/CMakeLists.txt +1 -0
  173. package/vendor/abseil-cpp/absl/profiling/hashtable.cc +18 -7
  174. package/vendor/abseil-cpp/absl/profiling/internal/profile_builder.cc +1 -0
  175. package/vendor/abseil-cpp/absl/random/internal/fastmath_test.cc +3 -5
  176. package/vendor/abseil-cpp/absl/random/internal/platform.h +0 -13
  177. package/vendor/abseil-cpp/absl/random/internal/randen_engine_test.cc +0 -1
  178. package/vendor/abseil-cpp/absl/random/internal/seed_material.cc +1 -27
  179. package/vendor/abseil-cpp/absl/status/BUILD.bazel +17 -0
  180. package/vendor/abseil-cpp/absl/status/CMakeLists.txt +16 -0
  181. package/vendor/abseil-cpp/absl/status/internal/status_internal.h +4 -2
  182. package/vendor/abseil-cpp/absl/status/internal/status_matchers.h +2 -2
  183. package/vendor/abseil-cpp/absl/status/internal/statusor_internal.h +2 -1
  184. package/vendor/abseil-cpp/absl/status/status.cc +4 -0
  185. package/vendor/abseil-cpp/absl/status/status.h +5 -0
  186. package/vendor/abseil-cpp/absl/status/status_matchers.h +48 -0
  187. package/vendor/abseil-cpp/absl/status/status_matchers_test.cc +27 -0
  188. package/vendor/abseil-cpp/absl/status/status_test.cc +1 -0
  189. package/vendor/abseil-cpp/absl/status/statusor.h +1 -1
  190. package/vendor/abseil-cpp/absl/strings/BUILD.bazel +101 -21
  191. package/vendor/abseil-cpp/absl/strings/CMakeLists.txt +99 -5
  192. package/vendor/abseil-cpp/absl/strings/ascii.h +9 -4
  193. package/vendor/abseil-cpp/absl/strings/cord.cc +15 -10
  194. package/vendor/abseil-cpp/absl/strings/cord.h +1 -1
  195. package/vendor/abseil-cpp/absl/strings/escaping.cc +126 -94
  196. package/vendor/abseil-cpp/absl/strings/internal/append_and_overwrite.h +93 -0
  197. package/vendor/abseil-cpp/absl/strings/internal/append_and_overwrite_test.cc +95 -0
  198. package/vendor/abseil-cpp/absl/strings/internal/cord_internal.h +2 -0
  199. package/vendor/abseil-cpp/absl/strings/internal/cord_rep_btree_test.cc +8 -8
  200. package/vendor/abseil-cpp/absl/strings/internal/cordz_info.cc +24 -18
  201. package/vendor/abseil-cpp/absl/strings/internal/cordz_info.h +10 -16
  202. package/vendor/abseil-cpp/absl/strings/internal/escaping.h +9 -7
  203. package/vendor/abseil-cpp/absl/strings/internal/generic_printer.cc +107 -0
  204. package/vendor/abseil-cpp/absl/strings/internal/generic_printer.h +115 -0
  205. package/vendor/abseil-cpp/absl/strings/internal/generic_printer_internal.h +423 -0
  206. package/vendor/abseil-cpp/absl/strings/internal/generic_printer_test.cc +685 -0
  207. package/vendor/abseil-cpp/absl/strings/internal/resize_uninitialized.h +0 -12
  208. package/vendor/abseil-cpp/absl/strings/internal/str_format/checker.h +2 -4
  209. package/vendor/abseil-cpp/absl/strings/internal/str_format/convert_test.cc +21 -7
  210. package/vendor/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +495 -8
  211. package/vendor/abseil-cpp/absl/strings/internal/str_join_internal.h +18 -15
  212. package/vendor/abseil-cpp/absl/strings/numbers.cc +71 -8
  213. package/vendor/abseil-cpp/absl/strings/numbers.h +25 -12
  214. package/vendor/abseil-cpp/absl/strings/numbers_test.cc +70 -0
  215. package/vendor/abseil-cpp/absl/strings/resize_and_overwrite.h +194 -0
  216. package/vendor/abseil-cpp/absl/strings/resize_and_overwrite_test.cc +154 -0
  217. package/vendor/abseil-cpp/absl/strings/str_cat.cc +96 -91
  218. package/vendor/abseil-cpp/absl/strings/str_cat.h +17 -12
  219. package/vendor/abseil-cpp/absl/strings/str_format_test.cc +4 -4
  220. package/vendor/abseil-cpp/absl/strings/str_split.h +1 -1
  221. package/vendor/abseil-cpp/absl/strings/str_split_test.cc +1 -1
  222. package/vendor/abseil-cpp/absl/strings/string_view.h +8 -718
  223. package/vendor/abseil-cpp/absl/strings/string_view_test.cc +1 -1265
  224. package/vendor/abseil-cpp/absl/strings/substitute.cc +24 -24
  225. package/vendor/abseil-cpp/absl/synchronization/BUILD.bazel +2 -3
  226. package/vendor/abseil-cpp/absl/synchronization/CMakeLists.txt +1 -0
  227. package/vendor/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +2 -2
  228. package/vendor/abseil-cpp/absl/synchronization/internal/kernel_timeout_test.cc +15 -5
  229. package/vendor/abseil-cpp/absl/synchronization/mutex.cc +2 -1
  230. package/vendor/abseil-cpp/absl/synchronization/mutex.h +47 -23
  231. package/vendor/abseil-cpp/absl/synchronization/notification.h +1 -1
  232. package/vendor/abseil-cpp/absl/time/CMakeLists.txt +2 -0
  233. package/vendor/abseil-cpp/absl/time/civil_time_benchmark.cc +1 -2
  234. package/vendor/abseil-cpp/absl/time/civil_time_test.cc +58 -103
  235. package/vendor/abseil-cpp/absl/time/clock.cc +18 -16
  236. package/vendor/abseil-cpp/absl/time/clock_test.cc +2 -2
  237. package/vendor/abseil-cpp/absl/time/duration_benchmark.cc +144 -0
  238. package/vendor/abseil-cpp/absl/time/duration_test.cc +26 -29
  239. package/vendor/abseil-cpp/absl/time/internal/cctz/BUILD.bazel +7 -1
  240. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +4 -2
  241. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +6 -103
  242. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.cc +186 -0
  243. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.h +37 -0
  244. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/version +1 -1
  245. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Ensenada +0 -0
  246. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Santa_Isabel +0 -0
  247. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Tijuana +0 -0
  248. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Mexico/BajaNorte +0 -0
  249. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/iso3166.tab +9 -9
  250. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zone1970.tab +12 -12
  251. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zonenow.tab +47 -47
  252. package/vendor/abseil-cpp/absl/time/time.cc +4 -4
  253. package/vendor/abseil-cpp/absl/time/time.h +10 -10
  254. package/vendor/abseil-cpp/absl/time/time_test.cc +1 -0
  255. package/vendor/abseil-cpp/absl/types/compare.h +62 -61
  256. package/vendor/abseil-cpp/absl/types/compare_test.cc +3 -3
  257. package/vendor/abseil-cpp/absl/types/internal/span.h +1 -0
  258. package/vendor/abseil-cpp/absl/types/optional.h +2 -2
  259. package/vendor/abseil-cpp/absl/types/span.h +10 -2
  260. package/vendor/abseil-cpp/absl/utility/utility.h +13 -0
  261. package/vendor/abseil-cpp/ci/absl_alternate_options.h +0 -1
  262. package/vendor/abseil-cpp/ci/cmake_common.sh +1 -1
  263. package/vendor/abseil-cpp/ci/cmake_install_test.sh +6 -0
  264. package/vendor/abseil-cpp/ci/linux_arm_clang-latest_libcxx_bazel.sh +1 -0
  265. package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_asan_bazel.sh +2 -0
  266. package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_bazel.sh +1 -0
  267. package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_tsan_bazel.sh +1 -0
  268. package/vendor/abseil-cpp/ci/linux_clang-latest_libstdcxx_bazel.sh +1 -0
  269. package/vendor/abseil-cpp/ci/linux_gcc-floor_libstdcxx_bazel.sh +1 -0
  270. package/vendor/abseil-cpp/ci/linux_gcc-latest_libstdcxx_bazel.sh +1 -0
  271. package/vendor/abseil-cpp/ci/linux_gcc-latest_libstdcxx_cmake.sh +6 -0
  272. package/vendor/abseil-cpp/ci/linux_gcc_alpine_cmake.sh +6 -0
  273. package/vendor/abseil-cpp/ci/macos_xcode_bazel.sh +3 -2
  274. package/vendor/abseil-cpp/ci/macos_xcode_cmake.sh +5 -0
  275. package/vendor/abseil-cpp/ci/windows_clangcl_bazel.bat +1 -0
  276. package/vendor/abseil-cpp/ci/windows_msvc_bazel.bat +1 -0
  277. package/vendor/abseil-cpp/ci/windows_msvc_cmake.bat +6 -1
  278. package/vendor/abseil-cpp/absl/base/internal/identity.h +0 -39
  279. package/vendor/abseil-cpp/absl/strings/string_view.cc +0 -257
  280. package/vendor/abseil-cpp/absl/strings/string_view_benchmark.cc +0 -380
@@ -255,6 +255,60 @@ TEST(CHECKTest, TestBinaryChecksWithStringComparison) {
255
255
  ABSL_TEST_CHECK_LT(a, "b");
256
256
  }
257
257
 
258
+ TEST(CHECKDeathTest, CheckWithCharStarAndStringPrintsTheCharStar) {
259
+ std::string str = "B";
260
+
261
+ // When the comparison happens as strings, then we print the CharT* as a
262
+ // string.
263
+ EXPECT_DEATH(ABSL_TEST_CHECK_EQ("A", str),
264
+ R"re(Check failed: \"A\" == str \(A vs. B\))re");
265
+ }
266
+
267
+ #if defined(GTEST_USES_SIMPLE_RE) && GTEST_USES_SIMPLE_RE
268
+ #define POINTER_VALUE_RE R"re(\w*)re"
269
+ #else
270
+ #define POINTER_VALUE_RE R"re((0x)*[0-9a-fA-F]*)re"
271
+ #endif
272
+
273
+ #define POINTER_VS_POINTER_RE(lhs, rhs) "\\(" lhs " vs. " rhs "\\)"
274
+
275
+ template <typename CharT>
276
+ void TestCharStarComparison() {
277
+ // When the comparison happens as pointers, we only print the pointer and not
278
+ // interpret it as a C-String because it might not be.
279
+ // Leave the CharTs uninitialized to trigger ASan/MSan failures if we actually
280
+ // read the pointers.
281
+ CharT* p1 = new CharT;
282
+ CharT* p2 = new CharT;
283
+ EXPECT_DEATH(ABSL_TEST_CHECK_EQ(p1, p2),
284
+ R"re(Check failed: p1 == p2 )re" POINTER_VS_POINTER_RE(
285
+ POINTER_VALUE_RE, POINTER_VALUE_RE));
286
+ CharT as_array[10];
287
+ EXPECT_DEATH(ABSL_TEST_CHECK_EQ(p1, as_array),
288
+ R"re(Check failed: p1 == as_array )re" POINTER_VS_POINTER_RE(
289
+ POINTER_VALUE_RE, POINTER_VALUE_RE));
290
+
291
+ const void* as_void = as_array;
292
+ EXPECT_DEATH(ABSL_TEST_CHECK_EQ(as_void, p2),
293
+ R"re(Check failed: as_void == p2 )re" POINTER_VS_POINTER_RE(
294
+ POINTER_VALUE_RE, POINTER_VALUE_RE));
295
+
296
+ delete p1;
297
+ delete p2;
298
+ }
299
+
300
+ TEST(CHECKDeathTest, CheckWithCharStarStringification) {
301
+ TestCharStarComparison<char>();
302
+ TestCharStarComparison<signed char>();
303
+ TestCharStarComparison<unsigned char>();
304
+ TestCharStarComparison<wchar_t>();
305
+ #if defined(__cpp_char8_t)
306
+ TestCharStarComparison<char8_t>();
307
+ #endif
308
+ TestCharStarComparison<char16_t>();
309
+ TestCharStarComparison<char32_t>();
310
+ }
311
+
258
312
  // For testing using CHECK*() on anonymous enums.
259
313
  enum { CASE_A, CASE_B };
260
314
 
@@ -292,8 +346,7 @@ TEST(CHECKDeathTest, TestBinaryChecksWithUnprintable) {
292
346
  ExampleTypeThatHasNoStreamOperator a{true};
293
347
  ExampleTypeThatHasNoStreamOperator b{false};
294
348
  ABSL_TEST_CHECK_EQ(a, a);
295
- EXPECT_DEATH(ABSL_TEST_CHECK_EQ(a, b),
296
- "Check failed: a == b \\(UNPRINTABLE vs. UNPRINTABLE\\)");
349
+ EXPECT_DEATH(ABSL_TEST_CHECK_EQ(a, b), "Check failed: a == b");
297
350
  ABSL_TEST_CHECK_EQ(a, true);
298
351
  EXPECT_DEATH(ABSL_TEST_CHECK_EQ(a, false),
299
352
  "Check failed: a == false \\(UNPRINTABLE vs. 0\\)");
@@ -340,9 +393,11 @@ TEST(CHECKDeathTest, TestNullValuesAreReportedCleanly) {
340
393
 
341
394
  a = "xx";
342
395
  EXPECT_DEATH(ABSL_TEST_CHECK_EQ(a, b),
343
- "Check failed: a == b \\(xx vs. \\(null\\)\\)");
396
+ R"re(Check failed: a == b )re" POINTER_VS_POINTER_RE(
397
+ POINTER_VALUE_RE, "\\(null\\)"));
344
398
  EXPECT_DEATH(ABSL_TEST_CHECK_EQ(b, a),
345
- "Check failed: b == a \\(\\(null\\) vs. xx\\)");
399
+ R"re(Check failed: b == a )re" POINTER_VS_POINTER_RE(
400
+ "\\(null\\)", POINTER_VALUE_RE));
346
401
 
347
402
  std::nullptr_t n{};
348
403
  EXPECT_DEATH(ABSL_TEST_CHECK_NE(n, nullptr),
@@ -15,6 +15,7 @@
15
15
  #include "absl/log/die_if_null.h"
16
16
 
17
17
  #include "absl/base/config.h"
18
+ #include "absl/base/nullability.h"
18
19
  #include "absl/log/log.h"
19
20
  #include "absl/strings/str_cat.h"
20
21
 
@@ -22,7 +23,8 @@ namespace absl {
22
23
  ABSL_NAMESPACE_BEGIN
23
24
  namespace log_internal {
24
25
 
25
- void DieBecauseNull(const char* file, int line, const char* exprtext) {
26
+ void DieBecauseNull(const char* absl_nonnull file, int line,
27
+ const char* absl_nonnull exprtext) {
26
28
  LOG(FATAL).AtLocation(file, line)
27
29
  << absl::StrCat("Check failed: '", exprtext, "' Must be non-null");
28
30
  }
@@ -23,10 +23,13 @@
23
23
 
24
24
  #include <stdint.h>
25
25
 
26
+ #include <type_traits>
26
27
  #include <utility>
27
28
 
28
29
  #include "absl/base/attributes.h"
29
30
  #include "absl/base/config.h"
31
+ #include "absl/base/internal/nullability_traits.h"
32
+ #include "absl/base/nullability.h"
30
33
  #include "absl/base/optimization.h"
31
34
 
32
35
  // ABSL_DIE_IF_NULL()
@@ -56,12 +59,30 @@ namespace log_internal {
56
59
  // generates less code than its implementation would if inlined, for a slight
57
60
  // code size reduction each time `ABSL_DIE_IF_NULL` is called.
58
61
  [[noreturn]] ABSL_ATTRIBUTE_NOINLINE void DieBecauseNull(
59
- const char* file, int line, const char* exprtext);
62
+ const char* absl_nonnull file, int line, const char* absl_nonnull exprtext);
60
63
 
61
64
  // Helper for `ABSL_DIE_IF_NULL`.
65
+
66
+ // Since we use `remove_reference_t` before `AddNonnullIfCompatible`, we need
67
+ // to explicitly have overloads for both lvalue reference and rvalue reference
68
+ // arguments and returns.
69
+ template <typename T>
70
+ [[nodiscard]] typename absl::base_internal::AddNonnullIfCompatible<
71
+ std::remove_reference_t<T>>::type&
72
+ DieIfNull(const char* absl_nonnull file, int line,
73
+ const char* absl_nonnull exprtext, T& t) {
74
+ if (ABSL_PREDICT_FALSE(t == nullptr)) {
75
+ // Call a non-inline helper function for a small code size improvement.
76
+ DieBecauseNull(file, line, exprtext);
77
+ }
78
+ return t;
79
+ }
80
+
62
81
  template <typename T>
63
- [[nodiscard]] T DieIfNull(const char* file, int line, const char* exprtext,
64
- T&& t) {
82
+ [[nodiscard]] typename absl::base_internal::AddNonnullIfCompatible<
83
+ std::remove_reference_t<T>>::type&&
84
+ DieIfNull(const char* absl_nonnull file, int line,
85
+ const char* absl_nonnull exprtext, T&& t) {
65
86
  if (ABSL_PREDICT_FALSE(t == nullptr)) {
66
87
  // Call a non-inline helper function for a small code size improvement.
67
88
  DieBecauseNull(file, line, exprtext);
@@ -59,7 +59,6 @@ cc_library(
59
59
  deps = [
60
60
  ":check_op",
61
61
  ":conditions",
62
- ":log_message",
63
62
  ":strip",
64
63
  "//absl/base:core_headers",
65
64
  ],
@@ -549,3 +548,34 @@ cc_test(
549
548
  "@google_benchmark//:benchmark_main",
550
549
  ],
551
550
  )
551
+
552
+ cc_library(
553
+ name = "container",
554
+ hdrs = ["container.h"],
555
+ copts = ABSL_DEFAULT_COPTS,
556
+ linkopts = ABSL_DEFAULT_LINKOPTS,
557
+ visibility = [
558
+ "//absl:__subpackages__",
559
+ ],
560
+ deps = [
561
+ "//absl/base:config",
562
+ "//absl/meta:requires",
563
+ "//absl/strings",
564
+ ],
565
+ )
566
+
567
+ cc_test(
568
+ name = "container_test",
569
+ srcs = ["container_test.cc"],
570
+ copts = ABSL_TEST_COPTS,
571
+ linkopts = ABSL_DEFAULT_LINKOPTS,
572
+ deps = [
573
+ ":container",
574
+ "//absl/base:config",
575
+ "//absl/strings",
576
+ "//absl/strings:str_format",
577
+ "//absl/types:span",
578
+ "@googletest//:gtest",
579
+ "@googletest//:gtest_main",
580
+ ],
581
+ )
@@ -12,13 +12,14 @@
12
12
  // See the License for the specific language governing permissions and
13
13
  // limitations under the License.
14
14
 
15
+ // SKIP_ABSL_INLINE_NAMESPACE_CHECK
16
+
15
17
  #ifndef ABSL_LOG_INTERNAL_CHECK_IMPL_H_
16
18
  #define ABSL_LOG_INTERNAL_CHECK_IMPL_H_
17
19
 
18
20
  #include "absl/base/optimization.h"
19
21
  #include "absl/log/internal/check_op.h"
20
22
  #include "absl/log/internal/conditions.h"
21
- #include "absl/log/internal/log_message.h"
22
23
  #include "absl/log/internal/strip.h"
23
24
 
24
25
  // CHECK
@@ -101,7 +101,9 @@ void MakeCheckOpValueString(std::ostream& os, const void* p) {
101
101
  }
102
102
  }
103
103
 
104
- void MakeCheckOpUnprintableString(std::ostream& os) { os << "UNPRINTABLE"; }
104
+ std::ostream& operator<<(std::ostream& os, UnprintableWrapper) {
105
+ return os << "UNPRINTABLE";
106
+ }
105
107
 
106
108
  // Helper functions for string comparisons.
107
109
  #define DEFINE_CHECK_STROP_IMPL(name, func, expected) \
@@ -46,10 +46,10 @@
46
46
  // `ABSL_LOG_INTERNAL_STRIP_STRING_LITERAL` wraps string literals that
47
47
  // should be stripped when `ABSL_MIN_LOG_LEVEL` exceeds `kFatal`.
48
48
  #ifdef ABSL_MIN_LOG_LEVEL
49
- #define ABSL_LOG_INTERNAL_STRIP_STRING_LITERAL(literal) \
50
- (::absl::LogSeverity::kFatal >= \
51
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL) \
52
- ? (literal) \
49
+ #define ABSL_LOG_INTERNAL_STRIP_STRING_LITERAL(literal) \
50
+ (::absl::LogSeverity::kFatal >= \
51
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL) \
52
+ ? (literal) \
53
53
  : "")
54
54
  #else
55
55
  #define ABSL_LOG_INTERNAL_STRIP_STRING_LITERAL(literal) (literal)
@@ -225,17 +225,12 @@ void MakeCheckOpValueString(std::ostream& os, signed char v);
225
225
  void MakeCheckOpValueString(std::ostream& os, unsigned char v);
226
226
  void MakeCheckOpValueString(std::ostream& os, const void* absl_nullable p);
227
227
 
228
- void MakeCheckOpUnprintableString(std::ostream& os);
229
-
230
228
  // A wrapper for types that have no operator<<.
231
229
  struct UnprintableWrapper {
232
230
  template <typename T>
233
231
  explicit UnprintableWrapper(const T&) {}
234
232
 
235
- friend std::ostream& operator<<(std::ostream& os, const UnprintableWrapper&) {
236
- MakeCheckOpUnprintableString(os);
237
- return os;
238
- }
233
+ friend std::ostream& operator<<(std::ostream& os, UnprintableWrapper);
239
234
  };
240
235
 
241
236
  namespace detect_specialization {
@@ -398,10 +393,35 @@ std::enable_if_t<
398
393
  std::conditional_t<std::is_signed_v<UnderlyingTypeT<T>>,
399
394
  int64_t, uint64_t>>>
400
395
  Detect(...);
396
+
397
+ template <typename T>
398
+ using Detected = decltype(Detect<T>(0));
401
399
  } // namespace detect_specialization
402
400
 
401
+ // If the comparison will happen as pointers, decay `char*` arguments to `void*`
402
+ // when printing them. There is no evidence that they are a NULL terminated
403
+ // C-String so printing them as such could lead to UB, and more importantly we
404
+ // compared pointers so showing the pointers is a better result.
403
405
  template <typename T>
404
- using CheckOpStreamType = decltype(detect_specialization::Detect<T>(0));
406
+ constexpr bool IsCharStarOrVoidStar() {
407
+ if constexpr (std::is_reference_v<T>) {
408
+ return IsCharStarOrVoidStar<std::remove_reference_t<T>>();
409
+ } else if constexpr (std::is_array_v<T>) {
410
+ return IsCharStarOrVoidStar<std::decay_t<T>>();
411
+ } else {
412
+ using U = std::remove_const_t<std::remove_pointer_t<T>>;
413
+ return std::is_pointer_v<T> &&
414
+ (std::is_same_v<char, U> || std::is_same_v<unsigned char, U> ||
415
+ std::is_same_v<signed char, U> || std::is_void_v<U>);
416
+ }
417
+ }
418
+
419
+ template <typename T1, typename T2,
420
+ typename U1 = detect_specialization::Detected<T1>,
421
+ typename U2 = detect_specialization::Detected<T2>>
422
+ using CheckOpStreamType =
423
+ std::conditional_t<IsCharStarOrVoidStar<U1>() && IsCharStarOrVoidStar<U2>(),
424
+ const void*, U1>;
405
425
 
406
426
  // Build the error message string. Specify no inlining for code size.
407
427
  template <typename T1, typename T2>
@@ -411,10 +431,16 @@ ABSL_ATTRIBUTE_RETURNS_NONNULL const char* absl_nonnull MakeCheckOpString(
411
431
  template <typename T1, typename T2>
412
432
  const char* absl_nonnull MakeCheckOpString(T1 v1, T2 v2,
413
433
  const char* absl_nonnull exprtext) {
414
- CheckOpMessageBuilder comb(exprtext);
415
- MakeCheckOpValueString(comb.ForVar1(), v1);
416
- MakeCheckOpValueString(comb.ForVar2(), v2);
417
- return comb.NewString();
434
+ if constexpr (std::is_same_v<CheckOpStreamType<T1, T2>, UnprintableWrapper> &&
435
+ std::is_same_v<CheckOpStreamType<T2, T1>, UnprintableWrapper>) {
436
+ // No sense printing " (UNPRINTABLE vs. UNPRINTABLE)"
437
+ return exprtext;
438
+ } else {
439
+ CheckOpMessageBuilder comb(exprtext);
440
+ MakeCheckOpValueString(comb.ForVar1(), v1);
441
+ MakeCheckOpValueString(comb.ForVar2(), v2);
442
+ return comb.NewString();
443
+ }
418
444
  }
419
445
 
420
446
  // Add a few commonly used instantiations as extern to reduce size of objects
@@ -445,7 +471,7 @@ ABSL_LOG_INTERNAL_DEFINE_MAKE_CHECK_OP_STRING_EXTERN(const void* absl_nonnull);
445
471
  #ifdef ABSL_MIN_LOG_LEVEL
446
472
  #define ABSL_LOG_INTERNAL_CHECK_OP_IMPL_RESULT(U1, U2, v1, v2, exprtext) \
447
473
  ((::absl::LogSeverity::kFatal >= \
448
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL)) \
474
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL)) \
449
475
  ? MakeCheckOpString<U1, U2>(v1, v2, exprtext) \
450
476
  : "")
451
477
  #else
@@ -461,8 +487,8 @@ ABSL_LOG_INTERNAL_DEFINE_MAKE_CHECK_OP_STRING_EXTERN(const void* absl_nonnull);
461
487
  template <typename T1, typename T2> \
462
488
  inline constexpr const char* absl_nullable name##Impl( \
463
489
  const T1& v1, const T2& v2, const char* absl_nonnull exprtext) { \
464
- using U1 = CheckOpStreamType<T1>; \
465
- using U2 = CheckOpStreamType<T2>; \
490
+ using U1 = CheckOpStreamType<T1, T2>; \
491
+ using U2 = CheckOpStreamType<T2, T1>; \
466
492
  return ABSL_PREDICT_TRUE(v1 op v2) \
467
493
  ? nullptr \
468
494
  : ABSL_LOG_INTERNAL_CHECK_OP_IMPL_RESULT(U1, U2, U1(v1), \
@@ -108,46 +108,49 @@
108
108
  #ifdef ABSL_MIN_LOG_LEVEL
109
109
  #define ABSL_LOG_INTERNAL_CONDITION_INFO(type, condition) \
110
110
  ABSL_LOG_INTERNAL_##type##_CONDITION( \
111
- (condition) && ::absl::LogSeverity::kInfo >= \
112
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL))
111
+ (condition) && \
112
+ ::absl::LogSeverity::kInfo >= \
113
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL))
113
114
  #define ABSL_LOG_INTERNAL_CONDITION_WARNING(type, condition) \
114
115
  ABSL_LOG_INTERNAL_##type##_CONDITION( \
115
- (condition) && ::absl::LogSeverity::kWarning >= \
116
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL))
116
+ (condition) && \
117
+ ::absl::LogSeverity::kWarning >= \
118
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL))
117
119
  #define ABSL_LOG_INTERNAL_CONDITION_ERROR(type, condition) \
118
120
  ABSL_LOG_INTERNAL_##type##_CONDITION( \
119
- (condition) && ::absl::LogSeverity::kError >= \
120
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL))
121
+ (condition) && \
122
+ ::absl::LogSeverity::kError >= \
123
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL))
121
124
  #define ABSL_LOG_INTERNAL_CONDITION_DO_NOT_SUBMIT(type, condition) \
122
125
  ABSL_LOG_INTERNAL_CONDITION_ERROR(type, condition)
123
126
  // NOTE: Use ternary operators instead of short-circuiting to mitigate
124
127
  // https://bugs.llvm.org/show_bug.cgi?id=51928.
125
128
  #define ABSL_LOG_INTERNAL_CONDITION_FATAL(type, condition) \
126
129
  ABSL_LOG_INTERNAL_##type##_CONDITION( \
127
- ((condition) \
128
- ? (::absl::LogSeverity::kFatal >= \
129
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL) \
130
- ? true \
131
- : (::absl::log_internal::AbortQuietly(), false)) \
132
- : false))
130
+ ((condition) ? (::absl::LogSeverity::kFatal >= \
131
+ static_cast<::absl::LogSeverityAtLeast>( \
132
+ ABSL_MIN_LOG_LEVEL) \
133
+ ? true \
134
+ : (::absl::log_internal::AbortQuietly(), false)) \
135
+ : false))
133
136
  // NOTE: Use ternary operators instead of short-circuiting to mitigate
134
137
  // https://bugs.llvm.org/show_bug.cgi?id=51928.
135
- #define ABSL_LOG_INTERNAL_CONDITION_QFATAL(type, condition) \
136
- ABSL_LOG_INTERNAL_##type##_CONDITION( \
137
- ((condition) \
138
- ? (::absl::LogSeverity::kFatal >= \
139
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL) \
140
- ? true \
141
- : (::absl::log_internal::ExitQuietly(), false)) \
142
- : false))
143
- #define ABSL_LOG_INTERNAL_CONDITION_DFATAL(type, condition) \
144
- ABSL_LOG_INTERNAL_##type##_CONDITION( \
145
- (ABSL_ASSUME(absl::kLogDebugFatal == absl::LogSeverity::kError || \
146
- absl::kLogDebugFatal == absl::LogSeverity::kFatal), \
147
- (condition) && \
148
- (::absl::kLogDebugFatal >= \
149
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL) || \
150
- (::absl::kLogDebugFatal == ::absl::LogSeverity::kFatal && \
138
+ #define ABSL_LOG_INTERNAL_CONDITION_QFATAL(type, condition) \
139
+ ABSL_LOG_INTERNAL_##type##_CONDITION( \
140
+ ((condition) ? (::absl::LogSeverity::kFatal >= \
141
+ static_cast<::absl::LogSeverityAtLeast>( \
142
+ ABSL_MIN_LOG_LEVEL) \
143
+ ? true \
144
+ : (::absl::log_internal::ExitQuietly(), false)) \
145
+ : false))
146
+ #define ABSL_LOG_INTERNAL_CONDITION_DFATAL(type, condition) \
147
+ ABSL_LOG_INTERNAL_##type##_CONDITION( \
148
+ (ABSL_ASSUME(absl::kLogDebugFatal == absl::LogSeverity::kError || \
149
+ absl::kLogDebugFatal == absl::LogSeverity::kFatal), \
150
+ (condition) && \
151
+ (::absl::kLogDebugFatal >= \
152
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL) || \
153
+ (::absl::kLogDebugFatal == ::absl::LogSeverity::kFatal && \
151
154
  (::absl::log_internal::AbortQuietly(), false)))))
152
155
 
153
156
  #define ABSL_LOG_INTERNAL_CONDITION_LEVEL(severity) \
@@ -157,13 +160,13 @@
157
160
  ::absl::NormalizeLogSeverity(severity); \
158
161
  absl_log_internal_severity_loop; absl_log_internal_severity_loop = 0) \
159
162
  ABSL_LOG_INTERNAL_CONDITION_LEVEL_IMPL
160
- #define ABSL_LOG_INTERNAL_CONDITION_LEVEL_IMPL(type, condition) \
161
- ABSL_LOG_INTERNAL_##type##_CONDITION(( \
162
- (condition) && \
163
- (absl_log_internal_severity >= \
164
- static_cast<::absl::LogSeverity>(ABSL_MIN_LOG_LEVEL) || \
165
- (absl_log_internal_severity == ::absl::LogSeverity::kFatal && \
166
- (::absl::log_internal::AbortQuietly(), false)))))
163
+ #define ABSL_LOG_INTERNAL_CONDITION_LEVEL_IMPL(type, condition) \
164
+ ABSL_LOG_INTERNAL_##type##_CONDITION( \
165
+ ((condition) && \
166
+ (absl_log_internal_severity >= \
167
+ static_cast<::absl::LogSeverityAtLeast>(ABSL_MIN_LOG_LEVEL) || \
168
+ (absl_log_internal_severity == ::absl::LogSeverity::kFatal && \
169
+ (::absl::log_internal::AbortQuietly(), false)))))
167
170
  #else // ndef ABSL_MIN_LOG_LEVEL
168
171
  #define ABSL_LOG_INTERNAL_CONDITION_INFO(type, condition) \
169
172
  ABSL_LOG_INTERNAL_##type##_CONDITION(condition)