%%
-void
+void __attribute__((noreturn))
yyerror(const char *message)
{
if (*yytext == YY_END_OF_BUFFER_CHAR)
%%
-void
+void __attribute__((noreturn))
yyerror(const char *message)
{
if (*yytext == YY_END_OF_BUFFER_CHAR)
appendStringInfoChar(&litbuf, ychar);
}
-void
+void __attribute__((noreturn))
yyerror(const char *message)
{
ereport(ERROR,
int expected_src_encoding,
int expected_dest_encoding);
-extern void report_invalid_encoding(int encoding, const char *mbstr, int len);
+extern void report_invalid_encoding(int encoding, const char *mbstr, int len) __attribute__((noreturn));
extern void report_untranslatable_char(int src_encoding, int dest_encoding,
- const char *mbstr, int len);
+ const char *mbstr, int len) __attribute__((noreturn));
extern void pg_ascii2mic(const unsigned char *l, unsigned char *p, int len);
extern void pg_mic2ascii(const unsigned char *mic, unsigned char *p, int len);
extern void addRTEtoQuery(ParseState *pstate, RangeTblEntry *rte,
bool addToJoinList,
bool addToRelNameSpace, bool addToVarNameSpace);
-extern void errorMissingRTE(ParseState *pstate, RangeVar *relation);
+extern void errorMissingRTE(ParseState *pstate, RangeVar *relation) __attribute__((noreturn));
extern void errorMissingColumn(ParseState *pstate,
- char *relname, char *colname, int location);
+ char *relname, char *colname, int location) __attribute__((noreturn));
extern void expandRTE(RangeTblEntry *rte, int rtindex, int sublevels_up,
int location, bool include_dropped,
List **colnames, List **colvars);
extern DeadLockState DeadLockCheck(PGPROC *proc);
extern PGPROC *GetBlockingAutoVacuumPgproc(void);
-extern void DeadLockReport(void);
+extern void DeadLockReport(void) __attribute__((noreturn));
extern void RememberSimpleDeadLock(PGPROC *proc1,
LOCKMODE lockmode,
LOCK *lock,
extern void die(SIGNAL_ARGS);
extern void quickdie(SIGNAL_ARGS) __attribute__((noreturn));
extern void StatementCancelHandler(SIGNAL_ARGS);
-extern void FloatExceptionHandler(SIGNAL_ARGS);
+extern void FloatExceptionHandler(SIGNAL_ARGS) __attribute__((noreturn));
extern void RecoveryConflictInterrupt(ProcSignalReason reason); /* called from SIGUSR1
* handler */
extern void prepare_for_client_read(void);
* Beware of using yyerror for other purposes, as the cursor position might
* be misleading!
*/
-void
+void __attribute__((noreturn))
plpgsql_yyerror(const char *message)
{
char *yytext = core_yy.scanbuf + plpgsql_yylloc;