diff options
| author | Paul Eggert <eggert@cs.ucla.edu> | 2017-08-29 12:49:22 -0700 |
|---|---|---|
| committer | Paul Eggert <eggert@cs.ucla.edu> | 2017-08-29 14:58:48 -0700 |
| commit | f1fdb5bc575728bd6c9f13a18939d9c271a74e83 (patch) | |
| tree | 75b63a474def4a9701b0d1eda984575e003ffabd | |
| parent | 02255c5fbc7e6dc0206db978994617cc72de4bb8 (diff) | |
| download | emacs-f1fdb5bc575728bd6c9f13a18939d9c271a74e83.tar.gz | |
Align stack bottom properly.
This is needed for gcc -Os -flto on x86-64 (Bug#28213).
* src/emacs.c (main): Align stack-bottom variable as a pointer,
since mark_memory requires this.
| -rw-r--r-- | src/emacs.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/emacs.c b/src/emacs.c index 0fec7167588..44f6285795a 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -672,7 +672,10 @@ close_output_streams (void) int main (int argc, char **argv) { - char stack_bottom_variable; + /* Variable near the bottom of the stack, and aligned appropriately + for pointers. */ + void *stack_bottom_variable; + bool do_initial_setlocale; bool dumping; int skip_args = 0; @@ -688,7 +691,7 @@ main (int argc, char **argv) char *original_pwd = 0; /* Record (approximately) where the stack begins. */ - stack_bottom = &stack_bottom_variable; + stack_bottom = (char *) &stack_bottom_variable; #ifndef CANNOT_DUMP dumping = !initialized && (strcmp (argv[argc - 1], "dump") == 0 |
