Estimated hours taken: 1
Update the test cases to reflect recent changes to io__write.
test/hard_coded/construct.m:
test/hard_coded/expand.m:
Use `io__print' rather than `io__write' for univs,
so that it doesn't output the `univ(... : type)' wrappers.
tests/hard_coded/deep_copy_bug.exp:
tests/hard_coded/construct.exp:
tests/hard_coded/expand.exp:
tests/hard_coded/write.exp:
tests/hard_coded/write_reg1.exp:
Change the expected output to use proper list notation
rather than prefix `.', and to properly quote strings and atoms,
but also to improperly quote equivalences types.
tests/hard_coded/Mmake:
Add a comment explaining that deep_copy_bug.exp, write.exp, and
write_reg1.exp are wrong, due to a bug in io__write.
Estimated hours taken: 0.75
Fix a bug where having a type named `,'/2 caused an error in
the generated C code, because the type name was not being mangled.
compiler/llds_out.m:
Mangle type names for base_type_infos.
tests/valid/name_mangling.m:
tests/valid/Mmake:
tests/hard_coded/name_mangling.m:
tests/hard_coded/Mmake:
Add some more tests of name mangling to `name_mangling.m',
and move it from the `valid' to the `hard_coded' directory,
since it is now a complete program that produces output.