Thanks Richard for pointing me some missing cases. The attached patch takes a step back and merge only the return types.
Richard suggested avoiding the merging when the new Decl is a k&r definition, but at this point of the code we haven't attached the body yet. It would also be nice if we could handle both definitions and declarations uniformly. I debugged why CodeGen was complaining and the problem is that by merging just the function types we end up with a ParmVarDecl whose type doesn't match the corresponding type in the FunctionProtoType and CodeGen asserts. Two options that would still let us merge the full types is making CodeGen cope with it (produce a llvm cast) or patching the type of the ParmVarDecl too. Do you think we should do it? Cheers, Rafael
t.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
