Commit Graph

14 Commits (cdb627642eb119da0a63d258c8c0be1937c66742)

Author SHA1 Message Date
Danny Yoo cdb627642e Gracefully handle the case where the token stream just contains the END token and an error occurs.
original commit: 69ae77a253fadbcb4ad4e87514e18f2a01b97068
12 years ago
Danny Yoo 2fd35df83a Correct location calculations for non-terminals.
The prior code constructed the location of nonterminal maches out of
the the state of the stream after parsing.  This isn't right for a few
reasons:

    1.  It doesn't get starting location correctly.

    2.  It doesn't behave when the non-terminal production did not
        actually consume tokens for its parse.

This patch modifies the parsers to also pass along a
"last-consumed-token"; it, along with a few other changes, provides
the parsers enough information to accurately construct the locations,
even when no tokens have been consumed during the parse.  We
synthesize a sentinel last-consumed-token token to take location from
the head of the stream.

original commit: 6e21e34ec7c7a3e9cf23a3f24bfafd6155e1f14a
12 years ago
Danny Yoo 33ebcd7a78 Modernize cfg-parser from mzscheme to Racket libraries.
original commit: 4ff4c677bd354cb1a26adf0c3e0e4de03a7a3939
12 years ago
Robby Findler e4eafd14e1 Added @literal-algol{} and started an algol60 test suite (apologies
if there already was one that I didn't find). Also fixed syntax
error raising procedure.

closes PR 12859

original commit: c0b928c758cc64b7b902fbe38838d31a3c1bc008
13 years ago
Matthew Flatt 181de9ebc3 fix `cfg-parser' to more closely match `parser'
original commit: c1ceebb92a86fce791eb3965d885917195e03eb4
13 years ago
David Van Horn cb1c226c0e Fixes more spelling errors.
original commit: 760a58b65df2b91010d2bcc2739ddab2a4489729
14 years ago
Matthew Flatt b0a5e55273 rename all files .ss -> .rkt
original commit: 28b404307793f041bb3363135a2968e283855318
15 years ago
Matthew Flatt 994d7dfcc6 v4.0.2.4: logging
svn: r10818

original commit: 9af00fcfb4782168ae583a3d66058095815725e3
17 years ago
Eli Barzilay 593b2d9d53 * Newlines at EOFs
* Another big chunk of v4-require-isms
* Allow `#lang framework/keybinding-lang' for keybinding files
* Move hierlist sources into "mrlib/hierlist", leave stub behind

svn: r10689

original commit: 7d50e61c7f6831936e13e6af5140db65db18fe1c
17 years ago
Eli Barzilay 13db5fbef7 use new require specs in many places
svn: r8774

original commit: b1a08edd5a8c0db0bae4a9e052d9a93d1faabb4f
17 years ago
Matthew Flatt 75b8182044 fixed handling of empty tokens
svn: r1350

original commit: d37d4e1d24c68ad7e3f40c3c20e3f59487456fb0
19 years ago
Matthew Flatt 79465df15c fixed comments
svn: r1347

original commit: df94948e8fb9fe1c881499401fb4e95bc6a0820f
19 years ago
Matthew Flatt 020a0a39a9 fixed description
svn: r1330

original commit: ec2567b39202f75435d6df187fc05586ce6ae776
19 years ago
Matthew Flatt 70c22bd9b8 fixed parser, since grammar is not LR(k)
svn: r1328

original commit: 5854060079bd2664998bc1fc554d755cffaa89eb
19 years ago