Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Module Suffix is added in rec module even if type with the same name is generic #5794

Closed
Booksbaum opened this issue Oct 19, 2018 · 0 comments · Fixed by #5796
Closed

Module Suffix is added in rec module even if type with the same name is generic #5794

Booksbaum opened this issue Oct 19, 2018 · 0 comments · Fixed by #5796
Labels
Milestone

Comments

@Booksbaum
Copy link
Contributor

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
@cartermp cartermp added this to the 16.0 milestone Oct 19, 2018
TIHan pushed a commit that referenced this issue Oct 25, 2018
… same name is generic (#5796)

* Add tests

* Add detection of generic types in rec modules
auduchinok pushed a commit to auduchinok/fsharp that referenced this issue Mar 21, 2019
…th the same name is generic (dotnet#5796)

* Add tests

* Add detection of generic types in rec modules
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants