Use ANSI versions on AIX regardless of __STDC__.
authorJim Kingdon <jkingdon@engr.sgi.com>
Tue, 30 Mar 1993 20:34:57 +0000 (20:34 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Tue, 30 Mar 1993 20:34:57 +0000 (20:34 +0000)
include/ChangeLog
include/ansidecl.h

index c3d40e9..2b6accd 100644 (file)
@@ -1,3 +1,11 @@
+Tue Mar 30 12:22:55 1993  Jim Kingdon  (kingdon@cygnus.com)
+
+       * ansidecl.h: Use ANSI versions on AIX regardless of __STDC__.
+
+Fri Mar 19 14:49:49 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
+
+       * dis-asm.h: Add h8500.
+
 Thu Mar 18 13:49:09 1993  Per Bothner  (bothner@rtl.cygnus.com)
 
        * ieee-float.h:  Moved from ../gdb.
index f5b61aa..8434f28 100644 (file)
@@ -1,5 +1,5 @@
 /* ANSI and traditional C compatability macros
-   Copyright 1991 Free Software Foundation, Inc.
+   Copyright 1991, 1992 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
 This program is free software; you can redistribute it and/or modify
@@ -29,7 +29,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
    SIGNED      `signed'                `'
    PTRCONST    `void *const'           `char *'
 
-   DEFUN(name, arglist, args)
+   DEFUN (name, arglist, args)
 
        Defines function NAME.
 
@@ -41,19 +41,38 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
        be separated with `AND'.  For functions with a variable number of
        arguments, the last thing listed should be `DOTS'.
 
-   DEFUN_VOID(name)
+   DEFUN_VOID (name)
 
        Defines a function NAME, which takes no arguments.
 
-   EXFUN(name, prototype)
+   obsolete --     EXFUN (name, (prototype))   -- obsolete.
 
-       Is used in an external function declaration.
-       In ANSI C it is `NAMEPROTOTYPE' (so PROTOTYPE should be enclosed in
+       Replaced by PARAMS.  Do not use; will disappear someday soon.
+       Was used in external function declarations.
+       In ANSI C it is `NAME PROTOTYPE' (so PROTOTYPE should be enclosed in
        parentheses).  In traditional C it is `NAME()'.
-       For a function that takes no arguments, PROTOTYPE should be `(NOARGS)'.
+       For a function that takes no arguments, PROTOTYPE should be `(void)'.
+
+    PARAMS ((args))
+
+       We could use the EXFUN macro to handle prototype declarations, but
+       the name is misleading and the result is ugly.  So we just define a
+       simple macro to handle the parameter lists, as in:
+
+             static int foo PARAMS ((int, char));
+
+       This produces:  `static int foo();' or `static int foo (int, char);'
+
+       EXFUN would have done it like this:
+
+             static int EXFUN (foo, (int, char));
+
+       but the function is not external...and it's hard to visually parse
+       the function name out of the mess.   EXFUN should be considered
+       obsolete; new code should be written to use PARAMS.
 
     For example:
-       extern int EXFUN(printf, (CONST char *format DOTS));
+       extern int printf PARAMS ((CONST char *format DOTS));
        int DEFUN(fprintf, (stream, format),
                  FILE *stream AND CONST char *format DOTS) { ... }
        void DEFUN_VOID(abort) { ... }
@@ -69,7 +88,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* LINTLIBRARY */
 
 
-#ifdef __STDC__
+#if defined (__STDC__) || defined (_AIX)
+/* the AIX xlc compiler implements all these things even when it is in
+   a mode which doesn't define __STDC__.  */
 
 #define        PTR             void *
 #define        PTRCONST        void *CONST
@@ -84,10 +105,10 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #define        EXFUN(name, proto)              name proto
 #define        DEFUN(name, arglist, args)      name(args)
-#define        DEFUN_VOID(name)                name(NOARGS)
+#define        DEFUN_VOID(name)                name(void)
 
-#define PROTO(type, name, arglist) type name arglist
-#endif
+#define PROTO(type, name, arglist)     type name arglist
+#define PARAMS(paramlist)              paramlist
 
 #else  /* Not ANSI C.  */
 
@@ -106,7 +127,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #define        DEFUN(name, arglist, args)      name arglist args;
 #define        DEFUN_VOID(name)                name()
 #define PROTO(type, name, arglist) type name ()
-#endif /* ANSI C.  */
+#define PARAMS(paramlist)              ()
 
+#endif /* ANSI C.  */
 
 #endif /* ansidecl.h   */