If a struct/enum type used in a record doesn't have a forward decl /
def, an implicit one is injected into the struct. This stops clang from
randomizing the structure in some situations---i.e. when the struct
contains only function pointers. So we accept forward decls so they
don't prevent randomization.
Fixes 60349
what about EnumDecls? I suspect the shared common base TagDecl might be better to use?
If it is, can you add a test? I'm guessing
would be the test case.