[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master d2d4b07: Port build to gcc -fcheck-pointer-bounds
From: |
Paul Eggert |
Subject: |
[Emacs-diffs] master d2d4b07: Port build to gcc -fcheck-pointer-bounds |
Date: |
Sat, 26 Nov 2016 05:26:02 +0000 (UTC) |
branch: master
commit d2d4b0746500265eddfa3c618bd6670aaa5eee90
Author: Paul Eggert <address@hidden>
Commit: Paul Eggert <address@hidden>
Port build to gcc -fcheck-pointer-bounds
This does not let Emacs run, just build.
* lib-src/etags.c (main):
* lib-src/profile.c (main):
Use return, not exit.
* src/bytecode.c (BYTE_CODE_THREADED) [__CHKP__]:
Do not define, as -fcheck-pointer-bounds is incompatible with taking
addresses of labels.
* src/menu.c (Fx_popup_dialog): Use eassume, not eassert,
to pacify gcc -fcheck-pointer-bounds -Wnull-dereference.
---
lib-src/etags.c | 4 ++--
lib-src/profile.c | 4 ++--
src/bytecode.c | 2 +-
src/menu.c | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lib-src/etags.c b/lib-src/etags.c
index e5d76d4..6a722e0 100644
--- a/lib-src/etags.c
+++ b/lib-src/etags.c
@@ -1330,7 +1330,7 @@ main (int argc, char **argv)
pfatal (tagfile);
}
- exit (EXIT_SUCCESS);
+ return EXIT_SUCCESS;
}
/* From here on, we are in (CTAGS && !cxref_style) */
@@ -1383,7 +1383,7 @@ main (int argc, char **argv)
z = stpcpy (z, tagfile);
*z++ = ' ';
strcpy (z, tagfile);
- exit (system (cmd));
+ return system (cmd);
}
return EXIT_SUCCESS;
}
diff --git a/lib-src/profile.c b/lib-src/profile.c
index edd36ca..cfee5b8 100644
--- a/lib-src/profile.c
+++ b/lib-src/profile.c
@@ -85,13 +85,13 @@ main (void)
puts (get_time ());
break;
case 'q':
- exit (EXIT_SUCCESS);
+ return EXIT_SUCCESS;
}
/* Anything remaining on the line is ignored. */
while (c != '\n' && c != EOF)
c = getchar ();
}
- exit (EXIT_FAILURE);
+ return EXIT_FAILURE;
}
diff --git a/src/bytecode.c b/src/bytecode.c
index e2d8ab7..be39a81 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -46,7 +46,7 @@ along with GNU Emacs. If not, see
<http://www.gnu.org/licenses/>. */
indirect threaded, using GCC's computed goto extension. This code,
as currently implemented, is incompatible with BYTE_CODE_SAFE and
BYTE_CODE_METER. */
-#if (defined __GNUC__ && !defined __STRICT_ANSI__ \
+#if (defined __GNUC__ && !defined __STRICT_ANSI__ && !defined __CHKP__ \
&& !BYTE_CODE_SAFE && !defined BYTE_CODE_METER)
#define BYTE_CODE_THREADED
#endif
diff --git a/src/menu.c b/src/menu.c
index 638810b..8070967 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -1540,7 +1540,7 @@ for instance using the window manager, then this produces
a quit and
/* Note that xw_popup_dialog can call menu code, so
Vmenu_updating_frame should be set (Bug#17891). */
- eassert (f && FRAME_LIVE_P (f));
+ eassume (f && FRAME_LIVE_P (f));
XSETFRAME (Vmenu_updating_frame, f);
/* Force a redisplay before showing the dialog. If a frame is created
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master d2d4b07: Port build to gcc -fcheck-pointer-bounds,
Paul Eggert <=