Goose  Diff

Differences From Artifact [b980720319]:

  • File bs/builtins/types/decl.cpp — part of check-in [af650a9e95] at 2019-09-22 14:37:55 on branch trunk — Project renaming. (user: achavasse size: 1339)

To Artifact [cb9e8b767e]:

  • File bs/builtins/types/decl.cpp — part of check-in [51c6751b6d] at 2020-05-21 17:26:11 on branch trunk — Created a new term type to represent holes in IR expressions. The old system of representing holes using a vector of two values led to ambiguousness when creating some rule patterns: a tuple whose both type vector and payload vector were holes would be indistinguishable from a tuple containing two elements. (user: achavasse size: 1337)

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

        return !!result;
    }

    const Term& Decl::Pattern::GetPattern()
    {
        static auto pattern = ValueToIRExpr(
            Value( TypeType(), VEC( TSID( decl ), MkHole( "_"_sid ) ) ) );

        return pattern;
    }
}

namespace goose::ir
{







|







16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

        return !!result;
    }

    const Term& Decl::Pattern::GetPattern()
    {
        static auto pattern = ValueToIRExpr(
            Value( TypeType(), VEC( TSID( decl ), HOLE( "_"_sid ) ) ) );

        return pattern;
    }
}

namespace goose::ir
{