Fix an assertion triggered when using anonymous structs in kernel
With asserts enabled, using an anonymous structure in the signature of
a kernel would cause an assertion to be triggered, which caused slang
to exit prematurely instead of printing an error diagnostic.
The problem is in the code in RSExportForEach::Create that exports
the types in the kernel signature. I changed this code not to throw
asserts when it sees a type that cannot be exported. However, since we
expect an error in this circumstance, I added an assert to ensure
that the diagnostic has been issued.
4 files changed