[LLVMbugs] [Bug 4061] New: clang breaks strict-aliasing rules according to g++4.4

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sat Apr 25 03:44:38 PDT 2009


http://llvm.org/bugs/show_bug.cgi?id=4061

           Summary: clang breaks strict-aliasing rules according to g++4.4
           Product: new-bugs
           Version: unspecified
          Platform: PC
               URL: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39891#c2
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: edwintorok at gmail.com
                CC: llvmbugs at cs.uiuc.edu


/home/edwin/llvm-svn/llvm/include/llvm/ADT/APInt.h: In member function ‘bool
clang::Expr::isIntegerConstantExpr(llvm::APSInt&, clang::ASTContext&,
clang::SourceLocation*, bool) const’:
/home/edwin/llvm-svn/llvm/include/llvm/ADT/APInt.h:99: warning: dereferencing
pointer ‘<anonymous>’ does break strict-aliasing rules
/home/edwin/llvm-svn/llvm/include/llvm/ADT/APInt.h:548: warning: dereferencing
pointer ‘<anonymous>’ does break strict-aliasing rules
/home/edwin/llvm-svn/llvm/include/llvm/ADT/APInt.h:549: warning: dereferencing
pointer ‘<anonymous>’ does break strict-aliasing rules
/home/edwin/llvm-svn/llvm/include/llvm/ADT/APSInt.h:38: warning: dereferencing
pointer ‘<anonymous>’ does break strict-aliasing rules
Expr.cpp:1334: note: initialized from here

The location info for the warning is not accurate (it doesn't show the very
line causing the violation), but the aliasing violation is real:
  return *(APSInt*)(void*)Data;

See URL for a possible solution.


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list