From 34e856d5ac828753b7be20e2471f39fb613f7f40 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 22 Apr 2014 13:19:17 -0700 Subject: [PATCH] Port to GCC 4.9.0 with --enable-gcc-warnings. * image.c (struct my_jpeg_error_mgr) [lint]: Remove member fp. All uses removed. (jpeg_load_body) [lint]: Add a 'volatile' to pacify a buggy GCC in a way that also works with GCC 4.9.0. --- src/ChangeLog | 6 ++++++ src/image.c | 11 ++--------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 2ac144f45a0..6e2f7057b75 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,11 @@ 2014-04-22 Paul Eggert + Port to GCC 4.9.0 with --enable-gcc-warnings. + * image.c (struct my_jpeg_error_mgr) [lint]: Remove member fp. + All uses removed. + (jpeg_load_body) [lint]: Add a 'volatile' to pacify a buggy GCC in + a way that also works with GCC 4.9.0. + * search.c (Fnewline_cache_check): Remove unused locals. 2014-04-22 Eli Zaretskii diff --git a/src/image.c b/src/image.c index d6d5ace509d..4133aaa7621 100644 --- a/src/image.c +++ b/src/image.c @@ -6262,9 +6262,6 @@ struct my_jpeg_error_mgr MY_JPEG_INVALID_IMAGE_SIZE, MY_JPEG_CANNOT_CREATE_X } failure_code; -#ifdef lint - FILE *fp; -#endif }; @@ -6479,7 +6476,8 @@ jpeg_load_body (struct frame *f, struct image *img, { Lisp_Object file, specified_file; Lisp_Object specified_data; - FILE *fp = NULL; + /* The 'volatile' silences a bogus diagnostic; see GCC bug 54561. */ + FILE * IF_LINT (volatile) fp = NULL; JSAMPARRAY buffer; int row_stride, x, y; XImagePtr ximg = NULL; @@ -6512,8 +6510,6 @@ jpeg_load_body (struct frame *f, struct image *img, return 0; } - IF_LINT (mgr->fp = fp); - /* Customize libjpeg's error handling to call my_error_exit when an error is detected. This function will perform a longjmp. */ mgr->cinfo.err = fn_jpeg_std_error (&mgr->pub); @@ -6552,9 +6548,6 @@ jpeg_load_body (struct frame *f, struct image *img, return 0; } - /* Silence a bogus diagnostic; see GCC bug 54561. */ - IF_LINT (fp = mgr->fp); - /* Create the JPEG decompression object. Let it read from fp. Read the JPEG image header. */ fn_jpeg_CreateDecompress (&mgr->cinfo, JPEG_LIB_VERSION, sizeof *&mgr->cinfo); -- 2.39.5