* lib/cdefs.h, lib/obstack.in.h (__extension__):
Oracle Developer Studio 12.6 also supports __extension__.
---
 ChangeLog        | 4 ++++
 lib/cdefs.h      | 2 +-
 lib/obstack.in.h | 3 ++-
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index dd0825acdf..c0691ce564 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2025-05-05  Paul Eggert  <egg...@cs.ucla.edu>
 
+       libc-config, obstack: Oracle __extension__ support
+       * lib/cdefs.h, lib/obstack.in.h (__extension__):
+       Oracle Developer Studio 12.6 also supports __extension__.
+
        obstack: be more like glibc for __extension__
        * lib/obstack.in.h (__extension__): Use glibc-like syntax
        for testing gcc version.
diff --git a/lib/cdefs.h b/lib/cdefs.h
index 53269033d9..65da09dc09 100644
--- a/lib/cdefs.h
+++ b/lib/cdefs.h
@@ -482,7 +482,7 @@
    run in pedantic mode if the uses are carefully marked using the
    `__extension__' keyword.  But this is not generally available before
    version 2.8.  */
-#if !(__GNUC_PREREQ (2,8) || defined __clang__)
+#if ! (__GNUC_PREREQ (2,8) || defined __clang__ || 0x5150 <= __SUNPRO_C)
 # define __extension__         /* Ignore */
 #endif
 
diff --git a/lib/obstack.in.h b/lib/obstack.in.h
index df7ef6f846..5e0db5f88e 100644
--- a/lib/obstack.in.h
+++ b/lib/obstack.in.h
@@ -324,7 +324,8 @@ extern int obstack_exit_failure;
 #define obstack_memory_used(h) _obstack_memory_used (h)
 
 #if defined __GNUC__ || defined __clang__
-# if ! (2 < __GNUC__ + (8 <= __GNUC_MINOR__) || defined __clang__)
+# if ! (2 < __GNUC__ + (8 <= __GNUC_MINOR__) || defined __clang__ \
+        || 0x5150 <= __SUNPRO_C)
 #  define __extension__
 # endif
 
-- 
2.49.0


Reply via email to