[libpng16] Check for __has_extension before using it in pngconf.h, to

support older Clang versions (Jeremy Sequoia).
This commit is contained in:
Glenn Randers-Pehrson 2014-02-20 06:57:57 -06:00
parent 9c5a1baea5
commit dd6679dce8
3 changed files with 13 additions and 7 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.6.10beta02 - February 17, 2014 Libpng 1.6.10beta02 - February 20, 2014
This is not intended to be a public release. It will be replaced This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version. within a few weeks by a public version or by another test version.
@ -55,7 +55,7 @@ Version 1.6.10beta01 [February 9, 2014]
and it adds corresponding code to pngimage.c to handle such options and it adds corresponding code to pngimage.c to handle such options
by not attempting to test them. by not attempting to test them.
Version 1.6.10beta02 [February 17, 2014] Version 1.6.10beta02 [February 20, 2014]
Moved redefines of png_error(), png_warning(), png_chunk_error(), Moved redefines of png_error(), png_warning(), png_chunk_error(),
and png_chunk_warning() from pngpriv.h to png.h to make them visible and png_chunk_warning() from pngpriv.h to png.h to make them visible
to libpng-calling applications. to libpng-calling applications.
@ -70,6 +70,8 @@ Version 1.6.10beta02 [February 17, 2014]
run all the png_handle_*() and depend on them to return if info_ptr == NULL. run all the png_handle_*() and depend on them to return if info_ptr == NULL.
This improves the performance of png_read_end(png_ptr, NULL) and makes This improves the performance of png_read_end(png_ptr, NULL) and makes
it more robust against future programming errors. it more robust against future programming errors.
Check for __has_extension before using it in pngconf.h, to
support older Clang versions (Jeremy Sequoia).
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit

View File

@ -4829,7 +4829,7 @@ Version 1.6.10beta01 [February 9, 2014]
and it adds corresponding code to pngimage.c to handle such options and it adds corresponding code to pngimage.c to handle such options
by not attempting to test them. by not attempting to test them.
Version 1.6.10beta02 [February 17, 2014] Version 1.6.10beta02 [February 20, 2014]
Moved redefines of png_error(), png_warning(), png_chunk_error(), Moved redefines of png_error(), png_warning(), png_chunk_error(),
and png_chunk_warning() from pngpriv.h to png.h to make them visible and png_chunk_warning() from pngpriv.h to png.h to make them visible
to libpng-calling applications. to libpng-calling applications.
@ -4844,6 +4844,8 @@ Version 1.6.10beta02 [February 17, 2014]
run all the png_handle_*() and depend on them to return if info_ptr == NULL. run all the png_handle_*() and depend on them to return if info_ptr == NULL.
This improves the performance of png_read_end(png_ptr, NULL) and makes This improves the performance of png_read_end(png_ptr, NULL) and makes
it more robust against future programming errors. it more robust against future programming errors.
Check for __has_extension before using it in pngconf.h, to
support older Clang versions (Jeremy Sequoia).
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit

View File

@ -1,7 +1,7 @@
/* pngconf.h - machine configurable file for libpng /* pngconf.h - machine configurable file for libpng
* *
* libpng version 1.6.10beta02 - February 9, 2014 * libpng version 1.6.10beta02 - February 20, 2014
* *
* Copyright (c) 1998-2013 Glenn Randers-Pehrson * Copyright (c) 1998-2013 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@ -376,11 +376,13 @@
# define PNG_DEPRECATED __attribute__((__deprecated__)) # define PNG_DEPRECATED __attribute__((__deprecated__))
# endif # endif
# if !defined(PNG_PRIVATE) # if !defined(PNG_PRIVATE)
# ifdef __has_extension
# if __has_extension(attribute_unavailable_with_message) # if __has_extension(attribute_unavailable_with_message)
# define PNG_PRIVATE __attribute__((__unavailable__(\ # define PNG_PRIVATE __attribute__((__unavailable__(\
"This function is not exported by libpng."))) "This function is not exported by libpng.")))
# endif # endif
# endif # endif
# endif
# ifndef PNG_RESTRICT # ifndef PNG_RESTRICT
# define PNG_RESTRICT __restrict # define PNG_RESTRICT __restrict
# endif # endif