Fix the build after recent DIBuilder changes and try another approach to
handling derived subroutine types while there.


git-svn-id: https://llvm.org/svn/llvm-project/dragonegg/trunk@182581 91177308-0d34-0410-b5e6-96231b3b80d8