We should have never defined the restrict keyword in the waffle.h header. The word is used as a hint to the compiler to provide optimisations re: pointer aliasing.
Keep the symbol around, so that the compiler can still optimise the library. v2: Move the symbol definition to its user and update the man pages. Resolves #11: https://github.com/waffle-gl/waffle/issues/11 Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> --- include/waffle/waffle.h | 8 ++------ man/waffle_is_extension_in_string.3.xml | 4 ++-- src/waffle/api/waffle_gl_misc.c | 4 ++++ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/waffle/waffle.h b/include/waffle/waffle.h index d43ddcf..91f3434 100644 --- a/include/waffle/waffle.h +++ b/include/waffle/waffle.h @@ -36,10 +36,6 @@ extern "C" { #endif -#if __STDC_VERSION__ < 199901L -# define restrict -#endif - struct waffle_display; struct waffle_config; struct waffle_context; @@ -172,8 +168,8 @@ void* waffle_get_proc_address(const char *name); bool -waffle_is_extension_in_string(const char *restrict extension_string, - const char *restrict extension_name); +waffle_is_extension_in_string(const char *extension_string, + const char *extension_name); // --------------------------------------------------------------------------- // waffle_display diff --git a/man/waffle_is_extension_in_string.3.xml b/man/waffle_is_extension_in_string.3.xml index 0aa215a..2734ea2 100644 --- a/man/waffle_is_extension_in_string.3.xml +++ b/man/waffle_is_extension_in_string.3.xml @@ -43,8 +43,8 @@ <funcprototype> <funcdef>bool <function>waffle_is_extension_in_string</function></funcdef> - <paramdef>const char *restrict <parameter>extension_string</parameter></paramdef> - <paramdef>const char *restrict <parameter>extension_name</parameter></paramdef> + <paramdef>const char * <parameter>extension_string</parameter></paramdef> + <paramdef>const char * <parameter>extension_name</parameter></paramdef> </funcprototype> </funcsynopsis> diff --git a/src/waffle/api/waffle_gl_misc.c b/src/waffle/api/waffle_gl_misc.c index f94b34b..10b4da5 100644 --- a/src/waffle/api/waffle_gl_misc.c +++ b/src/waffle/api/waffle_gl_misc.c @@ -34,6 +34,10 @@ #include "wcore_platform.h" #include "wcore_window.h" +#if __STDC_VERSION__ < 199901L +# define restrict +#endif + WAFFLE_API bool waffle_is_extension_in_string( const char *restrict extension_string, -- 1.9.3 _______________________________________________ waffle mailing list waffle@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/waffle