Commit Graph

13 Commits (2fd35df83aa74034af02c9e580e5ea15d303f8bb)

Author SHA1 Message Date
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