Commit 548c65a5 authored by Rob Pike's avatar Rob Pike

spec: add another sentence about BOMs

Although one may argue that they should be legal, gc (at least)
disallows byte order marks that are not the first code point
in the file. Added a sentence to the "Implementation restriction"
clause in the "Source code representation" section to document
this better.

Lifting this restriction (again - the rule has changed at least
twice already) would not break any existing programs, should
we later decide yet again to fiddle the rules about these little
fly specks.

R=golang-dev, dsymonds, gri
CC=golang-dev
https://golang.org/cl/8649043
parent d06be395
<!--{ <!--{
"Title": "The Go Programming Language Specification", "Title": "The Go Programming Language Specification",
"Subtitle": "Version of April 3, 2013", "Subtitle": "Version of April 10, 2013",
"Path": "/ref/spec" "Path": "/ref/spec"
}--> }-->
...@@ -103,6 +103,7 @@ compiler may disallow the NUL character (U+0000) in the source text. ...@@ -103,6 +103,7 @@ compiler may disallow the NUL character (U+0000) in the source text.
Implementation restriction: For compatibility with other tools, a Implementation restriction: For compatibility with other tools, a
compiler may ignore a UTF-8-encoded byte order mark compiler may ignore a UTF-8-encoded byte order mark
(U+FEFF) if it is the first Unicode code point in the source text. (U+FEFF) if it is the first Unicode code point in the source text.
A byte order mark may be disallowed anywhere else in the source.
</p> </p>
<h3 id="Characters">Characters</h3> <h3 id="Characters">Characters</h3>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment