<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/go-git.git/src/cmd/compile/internal/syntax/parser.go, branch dev.gcfe</title>
<subtitle>github.com: golang/go
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/'/>
<entry>
<title>cmd/compile/internal/syntax: match old parser errors and line numbers</title>
<updated>2016-08-16T21:32:09+00:00</updated>
<author>
<name>Matthew Dempsky</name>
<email>mdempsky@google.com</email>
</author>
<published>2016-06-07T00:59:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=504a104a2cbc7e7e2a1c01be31c97f363369fe3e'/>
<id>504a104a2cbc7e7e2a1c01be31c97f363369fe3e</id>
<content type='text'>
This makes a bunch of changes to package syntax to tweak line numbers
for AST nodes. For example, short variable declaration statements are
now associated with the location of the ":=" token, and function calls
are associated with the location of the final ")" token. These help
satisfy many unit tests that assume the old parser's behavior.

Because many of these changes are questionable, they're guarded behind
a new "gcCompat" const to make them easy to identify and revisit in
the future.

A handful of remaining tests are too difficult to make behave
identically. These have been updated to execute with -newparser=0 and
comments explaining why they need to be fixed.

all.bash now passes with both the old and new parsers.

Change-Id: Iab834b71ca8698d39269f261eb5c92a0d55a3bf4
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes a bunch of changes to package syntax to tweak line numbers
for AST nodes. For example, short variable declaration statements are
now associated with the location of the ":=" token, and function calls
are associated with the location of the final ")" token. These help
satisfy many unit tests that assume the old parser's behavior.

Because many of these changes are questionable, they're guarded behind
a new "gcCompat" const to make them easy to identify and revisit in
the future.

A handful of remaining tests are too difficult to make behave
identically. These have been updated to execute with -newparser=0 and
comments explaining why they need to be fixed.

all.bash now passes with both the old and new parsers.

Change-Id: Iab834b71ca8698d39269f261eb5c92a0d55a3bf4
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: refactor DeclStmt parsing</title>
<updated>2016-08-16T21:32:09+00:00</updated>
<author>
<name>Matthew Dempsky</name>
<email>mdempsky@google.com</email>
</author>
<published>2016-06-27T21:51:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=4bc85b2eb8664470c131517d9fab1090827857b6'/>
<id>4bc85b2eb8664470c131517d9fab1090827857b6</id>
<content type='text'>
No behavior change.

Change-Id: I93c7cb7ab76b5afa74e6a1f092b7045fb96467b1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No behavior change.

Change-Id: I93c7cb7ab76b5afa74e6a1f092b7045fb96467b1
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: emit errors for unexpected top-level tokens</title>
<updated>2016-08-16T21:32:09+00:00</updated>
<author>
<name>Matthew Dempsky</name>
<email>mdempsky@google.com</email>
</author>
<published>2016-06-10T21:18:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=83153e7f372a5822a771e132885633cd24d3df12'/>
<id>83153e7f372a5822a771e132885633cd24d3df12</id>
<content type='text'>
Fixes cmd/go's TestIssue7108.

Change-Id: I8436b0e3e5a9b36649d46a9c2c741d820115a5d1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes cmd/go's TestIssue7108.

Change-Id: I8436b0e3e5a9b36649d46a9c2c741d820115a5d1
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: provide LitKind to identify literals</title>
<updated>2016-08-16T21:32:08+00:00</updated>
<author>
<name>Robert Griesemer</name>
<email>gri@golang.org</email>
</author>
<published>2016-06-10T20:54:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=3c72ed3bfaa29c26333acbf83476dca9e97a1f36'/>
<id>3c72ed3bfaa29c26333acbf83476dca9e97a1f36</id>
<content type='text'>
- various minor cleanups related to literal scanning
- report newlines in character and regular string literals (plus tests)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- various minor cleanups related to literal scanning
- report newlines in character and regular string literals (plus tests)
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: cleanup TypeSwitchGuard handling</title>
<updated>2016-08-16T21:32:08+00:00</updated>
<author>
<name>Matthew Dempsky</name>
<email>mdempsky@google.com</email>
</author>
<published>2016-06-09T21:55:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=0d8ac5ecf1c6be4d81214b11579a7fd1cf7a4514'/>
<id>0d8ac5ecf1c6be4d81214b11579a7fd1cf7a4514</id>
<content type='text'>
Fixes typeswitch3.go and at least recognizes the error in typesw.go
(albeit wrong line number and non-pretty-printed syntax.Expr output).

Change-Id: I38b8e923265b0e7b3c301aea2f4a901bbabc24b5
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes typeswitch3.go and at least recognizes the error in typesw.go
(albeit wrong line number and non-pretty-printed syntax.Expr output).

Change-Id: I38b8e923265b0e7b3c301aea2f4a901bbabc24b5
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: export ImplicitOne and use to identify x++/x--</title>
<updated>2016-08-16T21:32:08+00:00</updated>
<author>
<name>Robert Griesemer</name>
<email>gri@golang.org</email>
</author>
<published>2016-06-09T00:45:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=573afbcdb6bf11e1fc7ed176b07a04719c1e9a26'/>
<id>573afbcdb6bf11e1fc7ed176b07a04719c1e9a26</id>
<content type='text'>
+ minor documentation improvements
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
+ minor documentation improvements
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: represent empty statements with EmptyStmt</title>
<updated>2016-08-16T21:32:07+00:00</updated>
<author>
<name>Matthew Dempsky</name>
<email>mdempsky@google.com</email>
</author>
<published>2016-06-08T23:25:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=81839a93a94e28de60984c5eb2e4081bb70f9f4f'/>
<id>81839a93a94e28de60984c5eb2e4081bb70f9f4f</id>
<content type='text'>
Fixes fixedbugs/bug031.go.

Change-Id: Icc1846368802d71ade14e1a6b79cb6ee651b663e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes fixedbugs/bug031.go.

Change-Id: Icc1846368802d71ade14e1a6b79cb6ee651b663e
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: fix source.getr</title>
<updated>2016-08-16T21:32:07+00:00</updated>
<author>
<name>Robert Griesemer</name>
<email>gri@golang.org</email>
</author>
<published>2016-06-08T05:49:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=f363ad2a55bd61c6cce5c3af107b11cc3fbeeb83'/>
<id>f363ad2a55bd61c6cce5c3af107b11cc3fbeeb83</id>
<content type='text'>
The source's rune reader logic was overly clever and tried to
determine if an invalid rune was due to an actual source error
or due to not enough bytes in the buffer.

Replaced with slightly optimized version of bufio Reader's
ReadRune method for now. Performance may be a tiny bit lower
but we can always optimize later.

Fixes endless loops when parsing certain source files.
Added test case to ScanError test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The source's rune reader logic was overly clever and tried to
determine if an invalid rune was due to an actual source error
or due to not enough bytes in the buffer.

Replaced with slightly optimized version of bufio Reader's
ReadRune method for now. Performance may be a tiny bit lower
but we can always optimize later.

Fixes endless loops when parsing certain source files.
Added test case to ScanError test.
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: rudimentary support for error reporting</title>
<updated>2016-08-16T21:32:07+00:00</updated>
<author>
<name>Robert Griesemer</name>
<email>gri@golang.org</email>
</author>
<published>2016-06-08T01:29:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=fe52bcc8e6a40c38ec554456d570405d673d080b'/>
<id>fe52bcc8e6a40c38ec554456d570405d673d080b</id>
<content type='text'>
If an ErrorHandler is provided with a syntax.ReadXXX
function, it is invoked for each error encountered.
Will need to be refined, but should enable progress
with all.bash.

Also:
- added tests for lexical errors
- fixed endless loops when encountering non-terminated
  strings and comments
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If an ErrorHandler is provided with a syntax.ReadXXX
function, it is invoked for each error encountered.
Will need to be refined, but should enable progress
with all.bash.

Also:
- added tests for lexical errors
- fixed endless loops when encountering non-terminated
  strings and comments
</pre>
</div>
</content>
</entry>
<entry>
<title>cmd/compile/internal/syntax: fix dot-import parsing</title>
<updated>2016-08-16T21:32:06+00:00</updated>
<author>
<name>Matthew Dempsky</name>
<email>mdempsky@google.com</email>
</author>
<published>2016-06-03T19:28:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/go-git.git/commit/?id=b3efd7d6e85d20a86f8859f16e3c30a202dda866'/>
<id>b3efd7d6e85d20a86f8859f16e3c30a202dda866</id>
<content type='text'>
Change-Id: Iba8c9d9c01516706a2fc6ca5502401cfc063f210
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Iba8c9d9c01516706a2fc6ca5502401cfc063f210
</pre>
</div>
</content>
</entry>
</feed>
