Skip to content

Commit 6d2290a

Browse files
committed
ghOSt: Deprecate custom CHECKs and use absl/log/check.h
This change deprecates the custom CHECKs in lib/logging.h and substitute them with ones in absl/log/check.h. PiperOrigin-RevId: 489331687
1 parent b7e3fe8 commit 6d2290a

File tree

3 files changed

+6
-55
lines changed

3 files changed

+6
-55
lines changed

BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,6 +317,7 @@ cc_library(
317317
"@com_google_absl//absl/debugging:stacktrace",
318318
"@com_google_absl//absl/debugging:symbolize",
319319
"@com_google_absl//absl/flags:flag",
320+
"@com_google_absl//absl/log:check",
320321
"@com_google_absl//absl/memory",
321322
"@com_google_absl//absl/status",
322323
"@com_google_absl//absl/status:statusor",

WORKSPACE

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,12 @@ http_archive(
3131
load("@rules_foreign_cc//foreign_cc:repositories.bzl", "rules_foreign_cc_dependencies")
3232
rules_foreign_cc_dependencies()
3333

34-
# Abseil LTS 20220623.1
34+
# Abseil live HEAD (Nov 17, 2022)
3535
http_archive(
3636
name = "com_google_absl",
37-
url = "https://github.com/abseil/abseil-cpp/archive/8c0b94e793a66495e0b1f34a5eb26bd7dc672db0.zip",
38-
sha256 = "b9f490fae1c0d89a19073a081c3c588452461e5586e4ae31bc50a8f36339135e",
39-
strip_prefix = "abseil-cpp-8c0b94e793a66495e0b1f34a5eb26bd7dc672db0",
37+
url = "https://github.com/abseil/abseil-cpp/archive/ebab79b5783b3298ee2f31251174c660c322d7ef.zip",
38+
sha256 = "c3b9d19cd38cd475f60b5756db1bdc6d10ed43e5c7ce7374eae9a57d763d0597",
39+
strip_prefix = "abseil-cpp-ebab79b5783b3298ee2f31251174c660c322d7ef",
4040
)
4141

4242
# GoogleTest release-1.12.1 (Jun 27 2022)

lib/logging.h

Lines changed: 1 addition & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -9,62 +9,12 @@
99

1010
#include <iostream>
1111

12+
#include "absl/log/check.h"
1213
#include "absl/strings/str_format.h"
1314
#include "third_party/util/util.h"
1415

1516
#if defined(GHOST_LOGGING)
1617

17-
#define __LCHECK(op, invop, expr1, expr2) \
18-
do { \
19-
auto __val1 = expr1; \
20-
auto __val2 = expr2; \
21-
if (!(__val1 op __val2)) { \
22-
int __errno = errno; \
23-
std::cerr << __FILE__ << ":" << __LINE__ << "(" << ghost::GetTID() \
24-
<< ") " \
25-
<< "CHECK FAILED: " << #expr1 << " " #op " " << #expr2 << " [" \
26-
<< __val1 << " " #invop " " << __val2 << "]" << std::endl; \
27-
if (__errno) { \
28-
std::cerr << "errno: " << __errno << " [" << std::strerror(__errno) \
29-
<< "]" << std::endl; \
30-
} \
31-
ghost::Exit(1); \
32-
} \
33-
} while (0)
34-
35-
#define CHECK_EQ(val1, val2) __LCHECK(==, !=, val1, val2)
36-
#define CHECK_NE(val1, val2) __LCHECK(!=, ==, val1, val2)
37-
#define CHECK_LT(val1, val2) __LCHECK(<, >=, val1, val2)
38-
#define CHECK_LE(val1, val2) __LCHECK(<=, <, val1, val2)
39-
#define CHECK_GT(val1, val2) __LCHECK(>, <=, val1, val2)
40-
#define CHECK_GE(val1, val2) __LCHECK(>=, >, val1, val2)
41-
#define CHECK(val1) CHECK_NE(val1, 0)
42-
43-
#ifndef NDEBUG
44-
#define DCHECK_EQ(val1, val2) CHECK_EQ(val1, val2)
45-
#define DCHECK_NE(val1, val2) CHECK_NE(val1, val2)
46-
#define DCHECK_LT(val1, val2) CHECK_LT(val1, val2)
47-
#define DCHECK_LE(val1, val2) CHECK_LE(val1, val2)
48-
#define DCHECK_GT(val1, val2) CHECK_GT(val1, val2)
49-
#define DCHECK_GE(val1, val2) CHECK_GE(val1, val2)
50-
#define DCHECK(condition) CHECK(condition)
51-
#else
52-
// `NDEBUG` is defined, so `DCHECK_EQ(x, y)` and so on do nothing. However, we
53-
// still want the compiler to parse `x` and `y`, because we don't want to lose
54-
// potentially useful errors and warnings.
55-
//
56-
// (cribbed from ABSL_LOGGING_INTERNAL_DCHECK_NOP)
57-
#define GHOST_DCHECK_NOP(x, y) while (false && ((void)(x), (void)(y), 0))
58-
59-
#define DCHECK_EQ(val1, val2) GHOST_DCHECK_NOP(val1, val2)
60-
#define DCHECK_NE(val1, val2) GHOST_DCHECK_NOP(val1, val2)
61-
#define DCHECK_LT(val1, val2) GHOST_DCHECK_NOP(val1, val2)
62-
#define DCHECK_LE(val1, val2) GHOST_DCHECK_NOP(val1, val2)
63-
#define DCHECK_GT(val1, val2) GHOST_DCHECK_NOP(val1, val2)
64-
#define DCHECK_GE(val1, val2) GHOST_DCHECK_NOP(val1, val2)
65-
#define DCHECK(condition) GHOST_DCHECK_NOP(condition, 0)
66-
#endif
67-
6818
#ifndef GHOST_DEBUG
6919
#ifdef NDEBUG
7020
#define GHOST_DEBUG 0

0 commit comments

Comments
 (0)