Goose  Diff

Differences From Artifact [669705babb]:

  • File bs/empathy.cpp — part of check-in [f3ac0d15e2] at 2019-01-19 13:59:41 on branch trunk — Parser: literals. (user: achavasse size: 823)

To Artifact [aa7c5439a0]:

  • File bs/empathy.cpp — part of check-in [3e4339b34a] at 2019-01-20 17:59:58 on branch trunk — Parser: added helpers to register parsing rules for prefix operators, postfix operators, and infix operators (either left or right associative). (user: achavasse size: 837)

17
18
19
20
21
22
23
24
25


26
27
28
29
30
31
32
17
18
19
20
21
22
23


24
25
26
27
28
29
30
31
32







-
-
+
+







    {
        cout << "can't open '" << *filename << "'\n";
        return EXIT_FAILURE;
    }

    // Simple parser test
    sema::Context c( make_shared< sema::Env >(), TSID( e0 ) );
    parse::Resolver r( make_shared< Lexer >( sourcefile, filename ), c );
    parse::Parser p( move( r ) );
    auto r = make_shared< parse::Resolver >( make_shared< Lexer >( sourcefile, filename ), c );
    parse::Parser p( r );

    auto parsed = p.parse();
    if( parsed )
        cout << ValueToIRExpr( *parsed ) << endl;

    return EXIT_SUCCESS;
}