Commit d2490e74 authored by Robert Griesemer's avatar Robert Griesemer

- Implemented simple rule for optional semicolons:

  Semicolons are terminators for statements as in C,
  but if followed by a "}" they are not required.
  This is easy to understand and produces the desired
  result for statements.
- Updated todo.txt.

SVN=113198
parent e4ca60ec
// $G $F.go && $L $F.$A &&./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func main() {
[ ' ',
'a',
// need to fix Coco/R scanner to read Unicode.
// 'ä',
//'本',
'\a',
'\b',
'\f',
'\n',
'\r',
'\t',
'\v',
'\\',
'\'',
'\"',
'\000',
'\123',
'\x00',
'\xca',
'\xFE',
'\u0123',
'\ubabe',
'\U0123ABCD',
'\Ucafebabe'
]
}
// $G $F.go && $L $F.$A && ./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func main() {
[ 0.,
+10.,
-210.,
.0,
+.01,
-.012,
0.0,
+10.01,
-210.012,
0E+1,
+10e2,
-210e3,
0E-1,
+0e23,
-0e345,
0E1,
+10e23,
-210e345,
0.E1,
+10.e+2,
-210.e-3,
.0E1,
+.01e2,
-.012e3,
0.0E1,
+10.01e2,
-210.012e3,
0.E+12,
+10.e23,
-210.e34,
.0E-12,
+.01e23,
-.012e34,
0.0E12,
+10.01e23,
-210.012e34,
0.E123,
+10.e+234,
-210.e-345,
.0E123,
+.01e234,
-.012e345,
0.0E123,
+10.01e234,
-210.012e345
]
}
...@@ -58,9 +58,9 @@ func (m *HashMap) Clear() { ...@@ -58,9 +58,9 @@ func (m *HashMap) Clear() {
var i uint32 = m.capacity() - 1; var i uint32 = m.capacity() - 1;
for i > 0 { for i > 0 {
m.map_[i].key = nil; m.map_[i].key = nil;
i = i - 1; i = i - 1
} }
m.occupancy_ = 0; m.occupancy_ = 0
} }
......
// $G $F.go && $L $F.$A && ./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func main() {
[ 0,
123,
0123,
0000,
0x0,
0x123,
0X0,
0X123
];
}
// $G $F.go && $L $F.$A && ./$A.out
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func main() {
[ "",
" ",
"'`",
"a",
//"ä",
//"本",
"\a\b\f\n\r\t\v\\\'\"",
"\000\123\x00\xca\xFE\u0123\ubabe\U0123ABCD\Ucafebabe",
``,
` `,
`'"`,
`a`,
//`ä`,
//`本`,
`\a\b\f\n\r\t\v\\\'\"`,
`\000\123\x00\xca\xFE\u0123\ubabe\U0123ABCD\Ucafebabe`,
`\x\u\U\`
]
}
...@@ -69,7 +69,7 @@ func control_structs() { ...@@ -69,7 +69,7 @@ func control_structs() {
foo: // a label foo: // a label
switch { switch {
case i < y: case i < y:
fallthrough fallthrough;
case i < j: case i < j:
case i == 0, i == 1, i == j: case i == 0, i == 1, i == j:
i++; i++; i++; i++;
......
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