Should we track balance tree and output messages effects at the type system level? #3649
Labels
compiler: frontend
Everything to do with type checking, control flow analysis, and everything between parsing and IRgen
PR #3648 introduces new kinds of state effects that are not storage effects, but balance tree effects and output messages effects, but the new effects are not tracked at the level of the type system like the storage effects.
This means the user can get unexpected effect-after-interaction warnings, because this information of is not reflected in the ABI. For instance, the stdlib functions
std::token::force_transfer_to_contract
,std::token::transfer_to_address
, andstd::message::send_typed_message
all have these new effects but no annotations.Should we add the new effects to the type system?
The text was updated successfully, but these errors were encountered: