[LLVMbugs] [Bug 3399] New: Assertion `S1->getType() == S2->getType() && " Cannot create binary operator with two operands of differing type!"' failed .

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sat Jan 24 21:24:58 PST 2009


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

           Summary: Assertion `S1->getType() == S2->getType() && "Cannot
                    create binary operator with two operands of differing
                    type!"' failed.
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: regehr at cs.utah.edu
                CC: llvmbugs at cs.uiuc.edu


Seen using r62920 on Ubuntu Hardy on x86.

regehr at john-home:~/volatile/tmp131$ llvm-gcc -O2 small.c
small.c:13: warning: ‘bar’ used but never defined
cc1: Instructions.cpp:1575: static llvm::BinaryOperator*
llvm::BinaryOperator::Create(llvm::Instruction::BinaryOps, llvm::Value*,
llvm::Value*, const std::string&, llvm::Instruction*): Assertion `S1->getType()
== S2->getType() && "Cannot create binary operator with two operands of
differing type!"' failed.
small.c:25: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
regehr at john-home:~/volatile/tmp131$ cat small.c
static short baz (short x, int y) 
{
  return 1 >= 1*8  ? : x;
}

static int biz (int x, int y) 
{
  return (1 & -y) < 0 ? : x - 1;
}

volatile int g_53;

static int bar (void);

int foo (void) 
{
  int l_2;
  for (l_2 = 0; l_2 != 1; l_2 = biz (l_2, 1))                    
    if (bar()) {
      if (baz (0 ? : g_53 * (short)l_2, 1)) 
        for (0; 1; 1);
      return 1;
    }
  return 0;
}


-- 
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