[MLton] Bug report: parsing failure
Andreas Rossberg
rossberg@ps.uni-sb.de
Tue, 01 Feb 2005 16:49:21 +0100
Hi,
strangely, MLton fails to parse the following program:
val x = 0;
ignore x;
ignore x;
Inserting a additional semicolon between the applications makes the
compiler accept it.
Log follows below.
- Andreas
MLton starting
MLton 20041109 (built Tue Nov 09 18:05:08 2004 on redhat71)
created this file on Tue Feb 01 16:41:39 2005.
Do not edit this file.
Flag settings:
align: 4
atMLtons: (x, @MLton, --)
basis library: basis-2002
log2 (card size): 8
chunk: chunk per function
codegen: Native
contifyIntoMain: false
debug: false
deepFlattenDelay: true
deepFlattenUnify: false
defines: []
diag passes: []
drop passes: []
elaborate allowConstant (default): false
elaborate allowConstant (enabled): true
elaborate allowExport (default): false
elaborate allowExport (enabled): true
elaborate allowImport (default): false
elaborate allowImport (enabled): true
elaborate allowPrim (default): false
elaborate allowPrim (enabled): true
elaborate allowOverload (default): false
elaborate allowOverload (enabled): true
elaborate allowRebindEquals (default): false
elaborate allowRebindEquals (enabled): true
elaborate deadCode (default): false
elaborate deadCode (enabled): true
elaborate forceUsed (default): 0
elaborate forceUsed (enabled): true
elaborate sequenceUnit (default): false
elaborate sequenceUnit (enabled): true
elaborate warnMatch (default): true
elaborate warnMatch (enabled): true
elaborate warnUnused (default): false
elaborate warnUnused (enabled): true
elaborate only: false
eliminate overflow: true
export header: None
exn history: false
gc check: Limit
handlers: Flow
indentation: 3
inline: NonRecursive {product = 320, small = 60}
inlineIntoMain: true
input file: x
instrument: false
instrument Sxml: false
keep Machine: false
keep RSSA: false
keep SSA: false
keep SSA2: false
keep dot: false
keep passes: []
extra_: false
lib dir: /usr/lib/mlton
lib target dir: /usr/lib/mlton/self
limit check: loop headers (fullCFG = false, loopExits = true)
limit check counts: false
loop passes: 1
mark cards: true
max function size: 10000
may load world: true
native commented: 0
native live stack: false
native optimize: 1
native move hoist: true
native copy prop: true
native copy prop cutoff: 1000
native cutoff: 100
native live transfer: 8
native future: 64
native shuffle: true
native ieee fp: false
native split: Some 20000
new return: false
polyvariance: Some {rounds = 2, small = 30, product = 300}
prof passes: []
profile: None
profile basis: false
profile branch: false
profile IL: ProfileSource
profile stack: false
reserve esp: None
show basis: None
show def-use: None
show types: false
ssaPassesSet: <ssaPassesSet>
ssaPasses: [default]
ssa2PassesSet: <ssa2PassesSet>
ssa2Passes: [default]
stack cont: false
static: false
sxmlPassesSet: <sxmlPassesSet>
sxmlPasses: [default]
target: self
target arch: X86
target OS: Linux
type check: false
type error: concise
use basis library: true
verbosity: Pass
warn unrecognized annotation: true
xmlPassesSet: <xmlPassesSet>
xmlPasses: [default]
zone cut depth: 100
Compile SML starting
pre codegen starting
parseAndElaborate starting
Error: x.sml 2.9.
Syntax error: inserting SEMICOLON.
parseAndElaborate finished in 1.48 + 0.63 (30% GC)
pre codegen raised in 1.48 + 0.63 (30% GC)
Compile SML raised in 1.49 + 0.63 (30% GC)
MLton raised in 1.49 + 0.63 (30% GC)
compilation aborted: parseAndElaborate reported errors
groove:~/src/hamlet/test> mlton x.sml
groove:~/src/hamlet/test> mlton x.sml
Error: x.sml 2.9.
Syntax error: inserting SEMICOLON.
compilation aborted: parseAndElaborate reported errors