This is a temporary implementation to support Flang. The LLVM-IR parser will need to be extended in some way to support recursive types. The exact approach here is still a work-in-progress.
Unfortunately, this won't pass roundtrip testing yet. Adding a comment to the test file as a reminder.
The convention for type constructors is getTypenameTy, and we already have getStructTy above.