Skip to content

Termination behaviour of &, &&, |, ||, / #33

Open
@AndreVanDelft

Description

@AndreVanDelft

Normally n-ary nodes are deactivated when they have no children any more.
This is done in line 451 of ContinuationHandler.scala:

if (node.children.isEmpty) insertDeactivation(node, null)

However, for operators &, &&, |, ||, / part of the children may be optional:
activated after a break?, and no atomic actions have yet happened therein.

The deactivation test should only take the set of other nodes into account;
when this test is matched the optionally activated children should be removed.

The code should have clear comments that explains what is being done.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions