You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think the most straightforward way to fix this is to add calls to embedded fields finalisers in the enclosing objects' finalisers. That would be in the genfun_fun function in genfun.c, where a special case should be added if the function being generated is a finaliser (i.e. if its name is _final).
Previously, finalisers of embedded fields would never be called due to
embedded fields being transparent to the runtime. This change adds
calls to the adequate finalisers in parent objects' finalisers when
said parents contain embedded fields.
Closesponylang#1551.
Previously, finalisers of embedded fields would never be called due to
embedded fields being transparent to the runtime. This change adds
calls to the adequate finalisers in parent objects' finalisers when
said parents contain embedded fields.
Closesponylang#1551.
Previously, finalisers of embedded fields would never be called due to
embedded fields being transparent to the runtime. This change adds
calls to the adequate finalisers in parent objects' finalisers when
said parents contain embedded fields.
Closes#1551.
Finalisers do not get run for
embed
s.@sylvanc pointed out that this might be an issue. I verified it by extending the
minimal-cases/finalisers
code to confirm.The following code:
Produces the following output when run:
If the
embed
inClassFinal
is changed to avar
orlet
the following output is produced:The text was updated successfully, but these errors were encountered: