There's no clash in names between a module and a generic type and therefore no Module suffix is needed. That was implemented in #1772 -- but only for normal modules. Inside rec modules the Module suffix is still added.
Repro steps
module rec M
type A<'a> = A of 'a
module A = begin end
Expected behavior
Module A is still named A after compilation.
Actual behavior
Module A gets renamed to AModule.
(on sharplab)
Known workarounds
None (probably besides using a static class instead of module...)
Related information
Provide any related information
- F# Compiler version 10.2.3 for F# 4.5 as well as master brach commit e42cea2
There's no clash in names between a module and a generic type and therefore no
Modulesuffix is needed. That was implemented in #1772 -- but only for normal modules. Insiderec modules theModulesuffix is still added.Repro steps
Expected behavior
Module
Ais still namedAafter compilation.Actual behavior
Module
Agets renamed toAModule.(on sharplab)
Known workarounds
None (probably besides using a static class instead of module...)
Related information
Provide any related information