[llvm-dev] Functions have two types, one can be mutated but not the other

Andy Ayers via llvm-dev llvm-dev at lists.llvm.org
Tue Nov 24 09:25:56 PST 2015


Function has its own FunctionType* member as well as a Type* member that it inherits from GlobalValue. The latter can be mutated but not the former, leading to potential strange inconsistencies.

While I realize using mutateType is probably going to trigger a bunch of "you're doing it wrong" replies, it seems like mutateType, as a necessary evil, should be virtual and do the right wrong thing for Functions too.

Thoughts?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151124/1d42aeff/attachment.html>


More information about the llvm-dev mailing list