OSDN Git Service

use _pragma
authorSHIRAKATA Kentaro <argrath@ub32.org>
Sun, 23 Sep 2018 09:50:33 +0000 (18:50 +0900)
committerSHIRAKATA Kentaro <argrath@ub32.org>
Sun, 23 Sep 2018 19:47:36 +0000 (04:47 +0900)
include/lint.h
src/files.c
src/restore.c
src/save.c
sys/share/unixtty.c
sys/unix/unixmain.c
sys/unix/unixunix.c
util/recover.c

index 93a3377..8e9ff23 100644 (file)
@@ -76,4 +76,19 @@ extern unsigned nhUse_dummy;
 #define debugpline4(fmt, a1, a2, a3, a4) /*empty*/
 #endif                                   /*DEBUG*/
 
+#if 1 /*JP*/
+#ifdef __GNUC__
+#define PRAGMA_IGNORE_HELPER0(x) #x
+#define PRAGMA_IGNORE_HELPER1(x) PRAGMA_IGNORE_HELPER0(GCC diagnostic ignored x)
+#define PRAGMA_IGNORE_HELPER2(y) PRAGMA_IGNORE_HELPER1(#y)
+#define _pragma_ignore(opt) _Pragma("GCC diagnostic push") \
+    _Pragma(PRAGMA_IGNORE_HELPER2(opt))
+#define _pragma_pop _Pragma("GCC diagnostic pop")
+#else
+#define _pragma_push
+#define _pragma_ignore(opt)
+#define _pragma_pop
+#endif
+#endif
+
 #endif /* LINT_H */
index b57df26..0fa4a47 100644 (file)
@@ -981,10 +981,9 @@ void
 save_savefile_name(fd)
 int fd;
 {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
     (void) write(fd, (genericptr_t) SAVEF, sizeof(SAVEF));
-#pragma GCC diagnostic pop
+_pragma_pop
 }
 #endif
 
@@ -1374,11 +1373,10 @@ boolean uncomp;
             redirect(filename, RDBMODE, stdin, uncomp);
             redirect(cfn, WRBMODE, stdout, uncomp);
         }
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         (void) setgid(getgid());
         (void) setuid(getuid());
-#pragma GCC diagnostic pop
+_pragma_pop
         (void) execv(args[0], (char *const *) args);
         perror((char *) 0);
         (void) fprintf(stderr, "Exec to %scompress %s failed.\n",
index 77a65d2..4905847 100644 (file)
@@ -1198,11 +1198,10 @@ int fd;
 char *plbuf;
 {
     int pltmpsiz = 0;
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
     (void) read(fd, (genericptr_t) &pltmpsiz, sizeof(pltmpsiz));
     (void) read(fd, (genericptr_t) plbuf, pltmpsiz);
-#pragma GCC diagnostic pop
+_pragma_pop
     return;
 }
 
index 47e2741..87e80ef 100644 (file)
@@ -412,10 +412,9 @@ savestateinlock()
         if (tricked_fileremoved(fd, whynot))
             return;
 
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         (void) read(fd, (genericptr_t) &hpid, sizeof(hpid));
-#pragma GCC diagnostic pop
+_pragma_pop
         if (hackpid != hpid) {
             Sprintf(whynot, "Level #0 pid (%d) doesn't match ours (%d)!",
                     hpid, hackpid);
@@ -432,17 +431,15 @@ savestateinlock()
             done(TRICKED);
             return;
         }
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         (void) write(fd, (genericptr_t) &hackpid, sizeof(hackpid));
-#pragma GCC diagnostic pop
+_pragma_pop
         if (flags.ins_chkpt) {
             int currlev = ledger_no(&u.uz);
 
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
             (void) write(fd, (genericptr_t) &currlev, sizeof(currlev));
-#pragma GCC diagnostic pop
+_pragma_pop
             save_savefile_name(fd);
             store_version(fd);
             store_savefileinfo(fd);
index 6e1cbe1..9affd7b 100644 (file)
@@ -410,10 +410,9 @@ linux_mapon()
 {
 #ifdef TTY_GRAPHICS
     if (!strcmp(windowprocs.name, "tty") && linux_flag_console) {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         write(1, "\033(B", 3);
-#pragma GCC diagnostic pop
+_pragma_pop
     }
 #endif
 }
@@ -423,10 +422,9 @@ linux_mapoff()
 {
 #ifdef TTY_GRAPHICS
     if (!strcmp(windowprocs.name, "tty") && linux_flag_console) {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         write(1, "\033(U", 3);
-#pragma GCC diagnostic pop
+_pragma_pop
     }
 #endif
 }
index 0dde12e..5f737fe 100644 (file)
@@ -508,11 +508,10 @@ boolean wr;
 #endif
         ) {
 #ifdef SECURE
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         (void) setgid(getgid());
         (void) setuid(getuid()); /* Ron Wessels */
-#pragma GCC diagnostic pop
+_pragma_pop
 #endif
     } else {
         /* non-default data files is a sign that scores may not be
index b3807a8..da77a15 100644 (file)
@@ -307,14 +307,13 @@ int wt;
     linux_mapon();
 #endif
     if ((f = fork()) == 0) { /* child */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         (void) setgid(getgid());
         (void) setuid(getuid());
 #ifdef CHDIR
         (void) chdir(getenv("HOME"));
 #endif
-#pragma GCC diagnostic pop
+_pragma_pop
         return 1;
     }
     if (f == -1) { /* cannot fork */
index daac5fc..c40a96f 100644 (file)
 #include <errno.h>
 #include "win32api.h"
 #endif
+#if 1 /*JP*//* copy from lint.h */
+#ifdef __GNUC__
+#define PRAGMA_IGNORE_HELPER0(x) #x
+#define PRAGMA_IGNORE_HELPER1(x) PRAGMA_IGNORE_HELPER0(GCC diagnostic ignored x)
+#define PRAGMA_IGNORE_HELPER2(y) PRAGMA_IGNORE_HELPER1(#y)
+#define _pragma_ignore(opt) _Pragma("GCC diagnostic push") \
+    _Pragma(PRAGMA_IGNORE_HELPER2(opt))
+#define _pragma_pop _Pragma("GCC diagnostic pop")
+#else
+#define _pragma_push
+#define _pragma_ignore(opt)
+#define _pragma_pop
+#endif
+#endif
+
 
 #ifdef VMS
 extern int FDECL(vms_creat, (const char *, unsigned));
@@ -116,11 +131,10 @@ char *argv[];
         && strcmp(dir, HACKDIR)
 #endif
             ) {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
         (void) setgid(getgid());
         (void) setuid(getuid());
-#pragma GCC diagnostic pop
+_pragma_pop
     }
 #endif /* SECURE && !VMS */
 
@@ -359,10 +373,9 @@ char *basename;
             if (lfd >= 0) {
                 /* any or all of these may not exist */
                 levc = (xchar) lev;
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-result"
+_pragma_ignore(-Wunused-result)
                 write(sfd, (genericptr_t) &levc, sizeof(levc));
-#pragma GCC diagnostic pop
+_pragma_pop
                 copy_bytes(lfd, sfd);
                 Close(lfd);
                 (void) unlink(lock);