This is an automated email from the ASF dual-hosted git repository.

MuhammadTahaNaveed pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/age.git


The following commit(s) were added to refs/heads/master by this push:
     new 6bdbf2a3 Put pg_noreturn before static in agtype_parser.c (#2598)
6bdbf2a3 is described below

commit 6bdbf2a34483a9dd8f4062f87b4641e3d2cf932a
Author: CyberNative AI LLC <[email protected]>
AuthorDate: Wed Nov 4 12:24:58 2026 -0800

    Put pg_noreturn before static in agtype_parser.c (#2598)
    
    PostgreSQL 19 defines pg_noreturn as the C23 attribute [[noreturn]]
    when the compiler defaults to C23, as GCC 15 does. A C23 attribute must
    come first in a declaration, so "static pg_noreturn void" no longer
    compiles:
    
      agtype_parser.c:77:20: error: expected identifier or '(' before 'void'
    
    Move pg_noreturn to the front of the two declarations, the placement
    PostgreSQL's own headers use (e.g. "pg_noreturn extern void
    pg_re_throw(void);" in utils/elog.h). The C11 _Noreturn form that
    PostgreSQL 18 and older use accepts the same placement.
    
    Fixes 2478
---
 src/backend/utils/adt/agtype_parser.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/backend/utils/adt/agtype_parser.c 
b/src/backend/utils/adt/agtype_parser.c
index 40fc8d8c..29b55433 100644
--- a/src/backend/utils/adt/agtype_parser.c
+++ b/src/backend/utils/adt/agtype_parser.c
@@ -74,9 +74,9 @@ static void parse_object(agtype_lex_context *lex, 
agtype_sem_action *sem);
 static void parse_array_element(agtype_lex_context *lex,
                                 agtype_sem_action *sem);
 static void parse_array(agtype_lex_context *lex, agtype_sem_action *sem);
-static pg_noreturn void report_parse_error(agtype_parse_context ctx,
+pg_noreturn static void report_parse_error(agtype_parse_context ctx,
                                agtype_lex_context *lex);
-static pg_noreturn void report_invalid_token(agtype_lex_context *lex);
+pg_noreturn static void report_invalid_token(agtype_lex_context *lex);
 static int report_agtype_context(agtype_lex_context *lex);
 static char *extract_mb_char(char *s);
 

Reply via email to