mirror of
https://github.com/postgres/postgres.git
synced 2025-11-07 19:06:32 +03:00
Change return type of ExceptionalCondition to void and mark it noreturn
In ancient times, it was thought that this wouldn't work because of TrapMacro/AssertMacro, but changing those to use a comma operator appears to work without compiler warnings.
This commit is contained in:
@@ -21,11 +21,8 @@
|
||||
|
||||
/*
|
||||
* ExceptionalCondition - Handles the failure of an Assert()
|
||||
*
|
||||
* Note: this can't actually return, but we declare it as returning int
|
||||
* because the TrapMacro() macro might get wonky otherwise.
|
||||
*/
|
||||
int
|
||||
void
|
||||
ExceptionalCondition(const char *conditionName,
|
||||
const char *errorType,
|
||||
const char *fileName,
|
||||
@@ -55,6 +52,4 @@ ExceptionalCondition(const char *conditionName,
|
||||
#endif
|
||||
|
||||
abort();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -1507,15 +1507,9 @@ pg_re_throw(void)
|
||||
errfinish(0);
|
||||
}
|
||||
|
||||
/* We mustn't return... */
|
||||
/* Doesn't return ... */
|
||||
ExceptionalCondition("pg_re_throw tried to return", "FailedAssertion",
|
||||
__FILE__, __LINE__);
|
||||
|
||||
/*
|
||||
* Since ExceptionalCondition isn't declared noreturn because of
|
||||
* TrapMacro(), we need this to keep gcc from complaining.
|
||||
*/
|
||||
abort();
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user