[PATCH] For broken exception handling in GDB on AIX platform

2017-04-25 Thread Sangamesh Mallayya
Hi,

I work with nitish.
Just wanted to check on this patch contribution if anyone has comments yet 
or changes are fine.  As of now all the comments are answered. 

Here is link https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00121.html

Thanks,
-Sangamesh




[PATCH] AIX Build failure with default -std=gnu23.

2024-11-27 Thread Sangamesh Mallayya
 libiberty/getopt.c file is defining _NO_PROTO which causes conflicting
 declarations for the functions in AIX header files like stdio.h & stdlib.h.
 These declarations are being considered as errors in C23 which wasn't
 the case with C17.

Here is the error we get.

/gcc_build/./prev-gcc/xgcc -B/gcc_build/./prev-gcc/ 
-B/home/sangam/install/GCC/powerpc-ibm-aix7.3.3.0/bin/ -B/home/sangam
/install/GCC/powerpc-ibm-aix7.3.3.0/bin/ 
-B/home/sangam/install/GCC/powerpc-ibm-aix7.3.3.0/lib/ -isystem /home/sangam/ins
tall/GCC/powerpc-ibm-aix7.3.3.0/include -isystem 
/home/sangam/install/GCC/powerpc-ibm-aix7.3.3.0/sys-include   -fno-check
ing -c -DHAVE_CONFIG_H -g -O2 -fno-checking  -I. 
-I/opt/freeware/src/packages/BUILD/gcc/libiberty/../include  -W -Wall -W
write-strings -Wc++-compat -Wstrict-prototypes -Wshadow=local -pedantic  
-D_GNU_SOURCE  /opt/freeware/src/packages/BUILD/
gcc/libiberty/getopt.c -o getopt.o


In file included from 
/opt/freeware/src/packages/BUILD/gcc/libiberty/getopt.c:45:
/gcc_build/prev-gcc/include-fixed/stdio.h:593:12: error: conflicting types for 
'fgetpos64'; have 'int(FILE *, fpos64_t *)
' {aka 'int(FILE *, long long int *)'}
  593 | extern int fgetpos64(FILE *, fpos64_t *);
  |^
/gcc_build/prev-gcc/include-fixed/stdio.h:298:17: note: previous declaration of 
'fgetpos64' with type 'int(void)'
  298 | extern int  fgetpos();
  | ^~~
/gcc_build/prev-gcc/include-fixed/stdio.h:594:14: error: conflicting types for 
'fopen64'; have 'FILE *(const char *, cons
t char *)'
  594 | extern FILE *fopen64(const char *, const char *);
  |  ^~~

/gcc_build/prev-gcc/include-fixed/stdio.h:259:17: note: previous declaration of 
'fopen64' with type 'FILE *(void)'
  259 | extern FILE *   fopen();
  | ^
/gcc_build/prev-gcc/include-fixed/stdio.h:595:14: error: conflicting types for 
'freopen64'; have 'FILE *(const char *, co
nst char *, FILE *)'
  595 | extern FILE *freopen64(const char *, const char *, FILE *);
  |  ^
/gcc_build/prev-gcc/include-fixed/stdio.h:260:17: note: previous declaration of 
'freopen64' with type 'FILE *(void)'
  260 | extern FILE *   freopen();
  | ^~~
/gcc_build/prev-gcc/include-fixed/stdio.h:597:12: error: conflicting types for 
'fsetpos64'; have 'int(FILE *, const fpos6
4_t *)' {aka 'int(FILE *, const long long int *)'}
  597 | extern int fsetpos64(FILE *, const fpos64_t *);
  |^
/gcc_build/prev-gcc/include-fixed/stdio.h:300:17: note: previous declaration of 
'fsetpos64' with type 'int(void)'
  300 | extern int  fsetpos();
  | ^~~
In file included from 
/opt/freeware/src/packages/BUILD/gcc/libiberty/getopt.c:216:
/gcc_build/prev-gcc/include-fixed/stdlib.h: In function 'strtold':
/gcc_build/prev-gcc/include-fixed/stdlib.h:233:30: error: too many arguments to 
function 'strtod'


Compiled with this patch on RHEL8.10 ppc64le as well.

---
 libiberty/getopt.c | 6 --
 1 file changed, 6 deletions(-)

diff --git a/libiberty/getopt.c b/libiberty/getopt.c
index 2f7086cc0c8..48736d4db41 100644
--- a/libiberty/getopt.c
+++ b/libiberty/getopt.c
@@ -23,12 +23,6 @@
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301,
USA.  */
 
-/* This tells Alpha OSF/1 not to define a getopt prototype in .
-   Ditto for AIX 3.2 and .  */
-#ifndef _NO_PROTO
-# define _NO_PROTO
-#endif
-
 #ifdef HAVE_CONFIG_H
 # include 
 #endif
-- 
2.41.0