[Bug target/40722] New: ia32intrin.h defines of _rotl, _rotr conflict with target stdlib.h decls.h

dannysmith at users dot sourceforge dot net gcc-bugzilla@gcc.gnu.org
Sat Jul 11 22:07:00 GMT 2009


These defines in ia32intrin.h 

#define _lrotl(a,b)             __rold((a), (b))
#define _lrotr(a,b)             __rord((a), (b))
...
#define _rotl(a,b)              __rold((a), (b))
#define _rotr(a,b)              __rord((a), (b))


conflict with mingw32 stdlib.h which
declares those names as functions

_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _rotl(unsigned int, int)
__MINGW_ATTRIB_CONST;
_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _rotr(unsigned int, int)
__MINGW_ATTRIB_CONST;
_CRTIMP unsigned long __cdecl __MINGW_NOTHROW _lrotl(unsigned long, int)
__MINGW_ATTRIB_CONST;
_CRTIMP unsigned long __cdecl __MINGW_NOTHROW _lrotr(unsigned long, int)
__MINGW_ATTRIB_CONST;


This is caught by  g++.dg/other/i386-[23456].C


-- 
           Summary: ia32intrin.h defines of _rotl, _rotr conflict with
                    target stdlib.h  decls.h
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dannysmith at users dot sourceforge dot net
 GCC build triplet: i686-pc-mingw32
  GCC host triplet: i686-pc-mingw32
GCC target triplet: i686-pc-mingw32


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



More information about the Gcc-bugs mailing list