summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/node.cc6
-rw-r--r--src/node_internals.h2
-rw-r--r--src/util.h10
3 files changed, 6 insertions, 12 deletions
diff --git a/src/node.cc b/src/node.cc
index 6250acfd5d..e85fab6760 100644
--- a/src/node.cc
+++ b/src/node.cc
@@ -1038,14 +1038,14 @@ static MaybeLocal<Value> ExecuteString(Environment* env,
}
-NO_RETURN void Abort() {
+[[noreturn]] void Abort() {
DumpBacktrace(stderr);
fflush(stderr);
ABORT_NO_BACKTRACE();
}
-NO_RETURN void Assert(const char* const (*args)[4]) {
+[[noreturn]] void Assert(const char* const (*args)[4]) {
auto filename = (*args)[0];
auto linenum = (*args)[1];
auto message = (*args)[2];
@@ -1354,7 +1354,7 @@ static void OnFatalError(const char* location, const char* message) {
}
-NO_RETURN void FatalError(const char* location, const char* message) {
+[[noreturn]] void FatalError(const char* location, const char* message) {
OnFatalError(location, message);
// to suppress compiler warning
ABORT();
diff --git a/src/node_internals.h b/src/node_internals.h
index 0c0b2e3176..d934d0f109 100644
--- a/src/node_internals.h
+++ b/src/node_internals.h
@@ -253,7 +253,7 @@ void AppendExceptionLine(Environment* env,
v8::Local<v8::Message> message,
enum ErrorHandlingMode mode);
-NO_RETURN void FatalError(const char* location, const char* message);
+[[noreturn]] void FatalError(const char* location, const char* message);
// Like a `TryCatch` but exits the process if an exception was caught.
class FatalTryCatch : public v8::TryCatch {
diff --git a/src/util.h b/src/util.h
index 91d61f121b..b522a88b72 100644
--- a/src/util.h
+++ b/src/util.h
@@ -77,16 +77,10 @@ inline T MultiplyWithOverflowCheck(T a, T b);
// whether V8 is initialized.
void LowMemoryNotification();
-#ifdef __GNUC__
-#define NO_RETURN __attribute__((noreturn))
-#else
-#define NO_RETURN
-#endif
-
// The slightly odd function signature for Assert() is to ease
// instruction cache pressure in calls from CHECK.
-NO_RETURN void Abort();
-NO_RETURN void Assert(const char* const (*args)[4]);
+[[noreturn]] void Abort();
+[[noreturn]] void Assert(const char* const (*args)[4]);
void DumpBacktrace(FILE* fp);
#define DISALLOW_COPY_AND_ASSIGN(TypeName) \