[Bug tree-optimization/59617] [vectorizer] ICE in vectorizable_mask_load_store with AVX-512F's gathers enabled.

dominiq at lps dot ens.fr gcc-bugzilla@gcc.gnu.org
Thu Apr 3 11:38:00 GMT 2014


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59617

--- Comment #10 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
I have found the origin of the problem. It is due to

#include <stdlib.h>

which after some steps include

sys/cdefs.h

which contains the following lines

/*
 * We use `__restrict' as a way to define the `restrict' type qualifier
 * without disturbing older software that is unaware of C99 keywords.
 */
#if __STDC_VERSION__ < 199901
#define __restrict
#else
#define __restrict      restrict
#endif

Note that using something such as -D__STDC_VERSION__=201401 gives a lot of
errors of the kind

/usr/include/stdlib.h:154:51: error: conflicting types for 'restrict'
 size_t  mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);

I don't have any idea about the best way to fix it.



More information about the Gcc-bugs mailing list