]> git.sur5r.net Git - cc65/commitdiff
Added _poserror, made perror __fastcall__
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 24 Apr 2003 20:55:55 +0000 (20:55 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 24 Apr 2003 20:55:55 +0000 (20:55 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@2071 b7a2c559-68d2-44c3-8de9-860c34a00d81

include/stdio.h
libsrc/common/.cvsignore
libsrc/common/Makefile
libsrc/common/_poserror.c [new file with mode: 0644]
libsrc/common/perror.c

index e9bc5d163cbdfa05447c11219566f7969b2a9b72..47db40c85a30cf4f2cc4dc9bb9b036dbb2ac23aa 100644 (file)
@@ -94,7 +94,7 @@ int fseek(FILE* f, long offset, int whence);
 void rewind(FILE *f);
 int getchar (void);
 char* gets (char* s);
-void perror (const char* s);
+void __fastcall__ perror (const char* s);
 int printf (const char* format, ...);
 int putchar (int c);
 int puts (const char* s);
@@ -117,7 +117,7 @@ int vfscanf (FILE* f, const char* format, va_list ap);
 FILE* fdopen (int fd, const char* mode);       /* Unix */
 int __fastcall__ fileno (FILE* f);             /* Unix */
 #endif
-
+void __fastcall__ _poserror (const char* msg);  /* cc65 */
 
 /* Masking macros for some functions */
 #define getchar()      fgetc (stdin)           /* ANSI */
index 36ebda219aa29e94aa561fa3ab82dff0ae8748f5..92e2088b4a5c6ec5a79ab1c391a94276c24b96b2 100644 (file)
@@ -1,6 +1,7 @@
 *.lst
 _afailed.s
 _hextab.s
+_poserror.s
 _scanf.s
 abort.s
 asctime.s
index a94af476d0bef7ab46d49bd2158ea213e6f2c686..24d4dc96361340be3205c4afd32b4803458c2b74 100644 (file)
@@ -19,6 +19,7 @@
 
 C_OBJS =       _afailed.o      \
                _hextab.o       \
+                _poserror.o     \
                _scanf.o        \
                abort.o         \
                 asctime.o       \
diff --git a/libsrc/common/_poserror.c b/libsrc/common/_poserror.c
new file mode 100644 (file)
index 0000000..b0b9391
--- /dev/null
@@ -0,0 +1,56 @@
+/*****************************************************************************/
+/*                                                                           */
+/*                                _poserror.c                                */
+/*                                                                           */
+/*                   Output a system dependent error code                    */
+/*                                                                           */
+/*                                                                           */
+/*                                                                           */
+/* (C) 2003      Ullrich von Bassewitz                                       */
+/*               Römerstrasse 52                                             */
+/*               D-70794 Filderstadt                                         */
+/* EMail:        uz@cc65.org                                                 */
+/*                                                                           */
+/*                                                                           */
+/* This software is provided 'as-is', without any expressed or implied       */
+/* warranty.  In no event will the authors be held liable for any damages    */
+/* arising from the use of this software.                                    */
+/*                                                                           */
+/* Permission is granted to anyone to use this software for any purpose,     */
+/* including commercial applications, and to alter it and redistribute it    */
+/* freely, subject to the following restrictions:                            */
+/*                                                                           */
+/* 1. The origin of this software must not be misrepresented; you must not   */
+/*    claim that you wrote the original software. If you use this software   */
+/*    in a product, an acknowledgment in the product documentation would be  */
+/*    appreciated but is not required.                                       */
+/* 2. Altered source versions must be plainly marked as such, and must not   */
+/*    be misrepresented as being the original software.                      */
+/* 3. This notice may not be removed or altered from any source              */
+/*    distribution.                                                          */
+/*                                                                           */
+/*****************************************************************************/
+
+
+
+#include <stdio.h>
+#include <string.h>
+#include <errno.h>
+
+
+
+void __fastcall__ _poserror (const char* msg)
+{
+    /* Fetch the message that corresponds to _oserrno */
+    const char* errormsg = _stroserror (_oserror);
+
+    /* Different output depending on msg */
+    if (msg) {
+        fprintf (stderr, "%s: %s\n", msg, errormsg);
+    } else {
+        fprintf (stderr, "%s\n", errormsg);
+    }
+}
+
+
+
index afe4be9962544811a73c0c246073a860b86932d8..9edc08f6e84c931e45cb88bd454b5b38d2cc23ca 100644 (file)
@@ -1,8 +1,35 @@
-/*
- * perror.c
- *
- * Ullrich von Bassewitz, 01.10.1998
- */
+/*****************************************************************************/
+/*                                                                           */
+/*                                 perror.c                                  */
+/*                                                                           */
+/*                       Print a system error message                        */
+/*                                                                           */
+/*                                                                           */
+/*                                                                           */
+/* (C) 1998-2003 Ullrich von Bassewitz                                       */
+/*               Römerstrasse 52                                             */
+/*               D-70794 Filderstadt                                         */
+/* EMail:        uz@cc65.org                                                 */
+/*                                                                           */
+/*                                                                           */
+/* This software is provided 'as-is', without any expressed or implied       */
+/* warranty.  In no event will the authors be held liable for any damages    */
+/* arising from the use of this software.                                    */
+/*                                                                           */
+/* Permission is granted to anyone to use this software for any purpose,     */
+/* including commercial applications, and to alter it and redistribute it    */
+/* freely, subject to the following restrictions:                            */
+/*                                                                           */
+/* 1. The origin of this software must not be misrepresented; you must not   */
+/*    claim that you wrote the original software. If you use this software   */
+/*    in a product, an acknowledgment in the product documentation would be  */
+/*    appreciated but is not required.                                       */
+/* 2. Altered source versions must be plainly marked as such, and must not   */
+/*    be misrepresented as being the original software.                      */
+/* 3. This notice may not be removed or altered from any source              */
+/*    distribution.                                                          */
+/*                                                                           */
+/*****************************************************************************/
 
 
 
@@ -12,7 +39,7 @@
 
 
 
-void perror (const char* msg)
+void __fastcall__ perror (const char* msg)
 {
     /* Fetch the message that corresponds to errno */
     const char* errormsg = strerror (errno);