diff -Naur genesis/src/Xodus/Widg/Text.c genesis_no_varargs_h/src/Xodus/Widg/Text.c
--- genesis/src/Xodus/Widg/Text.c	2001-06-29 23:09:37.000000000 +0200
+++ genesis_no_varargs_h/src/Xodus/Widg/Text.c	2003-10-09 21:21:18.000000000 +0200
@@ -61,7 +61,7 @@
 
 #include <X11/IntrinsicP.h>
 #include <X11/StringDefs.h>
-#include <varargs.h>
+#include <stdarg.h>
 #include <string.h>
 #include "TextP.h"
 #include "Xo/XoDefs.h"
@@ -138,7 +138,7 @@
 
 /* utilities */
 static void
-                IncrementTextMemory(), CallAction(), InsertString();
+                IncrementTextMemory(), CallAction(void (*action) (), Widget widget, XEvent *event, ...), InsertString();
 void
                 Recalculate();	/* from Label.c */
 void
@@ -665,17 +665,13 @@
 
 /* VARARGS */
 static void
-CallAction(action, widget, event, va_alist)
-	void            (*action) ();
-	Widget          widget;
-	XEvent         *event;
-va_dcl
+CallAction(void (*action) (), Widget widget, XEvent *event, ...)
 {
 	va_list         args;
 	String          argv[100];
 	Cardinal        argc = 0;
 
-	va_start(args);
+	va_start(args, event);
 	while ((argv[argc++] = va_arg(args, String)));
 	argc--;
 	va_end(args);
diff -Naur genesis/src/Xodus/Xo/Error.c genesis_no_varargs_h/src/Xodus/Xo/Error.c
--- genesis/src/Xodus/Xo/Error.c	2000-06-12 06:28:20.000000000 +0200
+++ genesis_no_varargs_h/src/Xodus/Xo/Error.c	2003-10-09 21:14:29.000000000 +0200
@@ -8,7 +8,7 @@
  * Initial revision
  * */
 
-#include <varargs.h>
+#include <stdarg.h>
 #include <stdio.h>
 
 void _XgPrintToStderr ();
@@ -16,14 +16,12 @@
 static void (*error_handler)() = _XgPrintToStderr;
 
 
-void XgError (format, va_alist)
-     char *format;
-     va_dcl
+void XgError (char *format, ...)
 {
   char error[256];
   va_list args;
 
-  va_start(args);
+  va_start(args, format);
   vsprintf (error, format, args);
   va_end(args);
   
diff -Naur genesis/src/Xodus/Xo/XoArgLists.c genesis_no_varargs_h/src/Xodus/Xo/XoArgLists.c
--- genesis/src/Xodus/Xo/XoArgLists.c	2000-06-12 06:28:20.000000000 +0200
+++ genesis_no_varargs_h/src/Xodus/Xo/XoArgLists.c	2003-10-09 21:15:22.000000000 +0200
@@ -27,7 +27,7 @@
 
 #include <X11/Intrinsic.h>
 #include <X11/StringDefs.h>
-#include <varargs.h>
+#include <stdarg.h>
 #include <stdio.h>
 
  static String XtNxtConvertVarToArgList = "xtConvertVarToArgList";
@@ -207,9 +207,7 @@
 XoXtVaSetValues(Widget widget, ...)
 #else
 VARARGS1*/
-void XoXtVaSetValues(widget, va_alist)
-    Widget widget;
-    va_dcl
+void XoXtVaSetValues(Widget widget, ...)
 {
     va_list                 var;
     ArgList                 args = NULL;
@@ -218,11 +216,11 @@
 /*     WIDGET_TO_APPCON(widget); */
 
     /* LOCK_APP(app); */
-    va_start(var);
+    va_start(var, widget);
     _XtCountVaList(var, &total_count, &typed_count);
     va_end(var);
 
-    va_start(var);
+    va_start(var, widget);
 
     _XoXtVaToArgList(widget, var, total_count, &args, &num_args);
     XtSetValues(widget, args, num_args);
diff -Naur genesis/src/diskio/diskio_func_ext.h genesis_no_varargs_h/src/diskio/diskio_func_ext.h
--- genesis/src/diskio/diskio_func_ext.h	2000-06-12 07:07:01.000000000 +0200
+++ genesis_no_varargs_h/src/diskio/diskio_func_ext.h	2003-10-09 21:12:25.000000000 +0200
@@ -52,7 +52,7 @@
  extern long ffParseIndexedField(/*char *field */);
  extern long ffParseWhiteSpacedString(/*char *string, char **eachstring*/);
 
- extern void ffError(/* char *format, va_list */);
+ extern void ffError(char *format, ...);
  extern void Expand_And_Copy_String(/* char**, char* */);
 
 #endif
diff -Naur genesis/src/diskio/diskio_utilfunc.c genesis_no_varargs_h/src/diskio/diskio_utilfunc.c
--- genesis/src/diskio/diskio_utilfunc.c	2000-06-12 07:07:01.000000000 +0200
+++ genesis_no_varargs_h/src/diskio/diskio_utilfunc.c	2003-10-09 21:16:11.000000000 +0200
@@ -48,21 +48,19 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <varargs.h>
+#include <stdarg.h>
 #include <sys/types.h>
 
 #include "absff_ext.h"
 #include "diskio_ext.h"
 
 
-void ffError(format, va_alist)
-	char *format;
-va_dcl
+void ffError(char *format, ...)
 {
 	char error[256];
 	va_list args;
 
-	va_start(args);
+	va_start(args, format);
 	vsprintf(error, format, args);
 	va_end(args);	 
 
diff -Naur genesis/src/shell/shell_func_ext.h genesis_no_varargs_h/src/shell/shell_func_ext.h
--- genesis/src/shell/shell_func_ext.h	2003-03-28 22:10:46.000000000 +0100
+++ genesis_no_varargs_h/src/shell/shell_func_ext.h	2003-10-09 21:12:25.000000000 +0200
@@ -173,8 +173,8 @@
 extern int      LogHeader();
 extern int      LogTime();
 extern int      LogTrailer();
-extern int      lprintf();
-extern int      lprint_only();
+extern int      lprintf(char *com, ...);
+extern int      lprint_only(char *com, ...);
 extern int      NestedLevel();
 extern Script  *NextScript();
 extern Script  *NextScript();
diff -Naur genesis/src/shell/shell_log.c genesis_no_varargs_h/src/shell/shell_log.c
--- genesis/src/shell/shell_log.c	2001-04-25 19:17:00.000000000 +0200
+++ genesis_no_varargs_h/src/shell/shell_log.c	2003-10-09 21:17:09.000000000 +0200
@@ -25,7 +25,7 @@
 /* mds3 changes */
 /* Changed various 'printf/fprintf' statements to 'vprintf/vfprintf' */
 #include <stdio.h>
-#include <varargs.h>
+#include <stdarg.h>
 #include <time.h>
 #include "header.h"
 #include "shell_ext.h"
@@ -122,9 +122,7 @@
     }
 }
 
-lprintf(com,va_alist)
-char *com;
-va_dcl
+lprintf(char *com, ...)
 {
 va_list ap;
 
@@ -134,7 +132,7 @@
 char	*ptr;
 int	nargs;
 
-    va_start(ap);
+    va_start(ap, com);
     /*
     ** determine the number of arguments based on the format string
     */
@@ -152,7 +150,7 @@
     */
 /* mds3 changes */
 /*  printf(com,va_alist); */
-    va_start(ap);
+    va_start(ap, com);
     vprintf(com,ap);
     /*
     ** is logging selected
@@ -164,14 +162,12 @@
 	*/
 /* mds3 changes */
 /*  	fprintf(logfp,com,va_alist); */
-	va_start(ap);
+	va_start(ap, com);
 	vfprintf(logfp,com,ap);
     }
 }
 
-lprint_only(com,va_alist)
-     char *com;
-     va_dcl
+lprint_only(char *com, ...)
 {
 /* mds3 changes */
 /* Added single line below */
@@ -183,7 +179,7 @@
      */
 /* mds3 changes */
 /*    fprintf(logfp,com,va_alist); */
-    va_start(ap);
+    va_start(ap, com);
     vfprintf(logfp,com,ap);
   }
 }
