Same internal name used for functor parameters and their instantiations #1556
Labels
bug
Something not working correctly
parameterized modules
Related to Cryptol's parameterized modules
While implementing a solution to #1455, we found that functor instantiations use the same internal names as the corresponding parameters in the functor. Specifically, if we have
then
N::x
reuses the exact same internal name asF::x
(the full name being in this exampleF::I::x_5244
) rather than a fresh name.Currently, this does not present an immediate issue with evaluating expressions at the REPL, since the instantiated parameters are not accessible from outside of the instantiated module, and we can only ever look inside a single module in the REPL at once, so the REPL does not get confused by the duplicate names. However, the
OrigName
of the instantiated parameter would be wrong and could cause issues elsewhere.The text was updated successfully, but these errors were encountered: