[LLVMbugs] [Bug 15083] New: StructType for dispatch_object_t changed by Linker

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sun Jan 27 09:40:47 PST 2013


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

             Bug #: 15083
           Summary: StructType for dispatch_object_t changed by Linker
           Product: new-bugs
           Version: 3.2
          Platform: Macintosh
        OS/Version: MacOS X
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: jlstrecker.bugzilla at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


The problem happens when a program does these steps (all with the global
LLVMContext): 

    1. Loads a module (otherModule) that uses `dispatch_object_t`. 

    2. Generates code that calls `dispatch_release`, which takes a
`dispatch_object_t` argument, into a module (mainModule). 

    3. Links otherModule into mainModule. 

    4. Generates more code that calls `dispatch_release`.  

In Step 4, the following failure occurs on the `CallInst::Create` call for
`dispatch_release`: 

Assertion failed: ((i >= FTy->getNumParams() || FTy->getParamType(i) ==
Args[i]->getType()) && "Calling a function with a bad signature!"), function
init, file Instructions.cpp, line 274.

For more information, including sample code, see
http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-December/057075.html and
replies.

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