Skip to content

Incorrect objects transformation inside of TsBinaryOperator #281

@CaelmBleidd

Description

@CaelmBleidd

Some binary operations are supported only for simple cases. For example, if we have two fakeObjects (such objects that can represent values of multiple sorts at the same time), we should implement application of a binary operator for reference OP bool, etc.

In the code they are marked as 'fake(ref)' == 'bool'. Since it is not yet implemented, we should remove such combinations from the processing. Previously it was made using assert instruction which it incorrect, since it removes the possibility for the fake object to represent some types in all the following branches.

Therefore, I've replaced it with temporary incorrect implementation:

    conjuncts += ExprWithTypeConstraint(
        constraint = lhsType.refTypeExpr,
        expr = mkFalse() // TODO mistake, we should coerce the ref object
    )

The correct implementation is required.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions