ref: 482ea3b5682f4a34c30ddc3546424ba1f8429bf7
parent: e24bcc37239283534785e2e2a31393f20ae6c9b7
author: Ori Bernstein <[email protected]>
date: Tue Aug 14 14:13:00 EDT 2012
Use ':' instead of ',' in slice ranges. It's clearer notation, IMO.
--- a/parse/gram.y
+++ b/parse/gram.y
@@ -502,7 +502,7 @@
{$$ = mkexpr($1->line, Opostdec, $1, NULL);}
| postfixexpr Tosqbrac expr Tcsqbrac
{$$ = mkexpr($1->line, Oidx, $1, $3, NULL);}
- | postfixexpr Tosqbrac optexpr Tcomma optexpr Tcsqbrac
+ | postfixexpr Tosqbrac optexpr Tcolon optexpr Tcsqbrac
{$$ = mksliceexpr($1->line, $1, $3, $5);}
| postfixexpr Toparen arglist Tcparen
{$$ = mkcall($1->line, $1, $3.nl, $3.nn);}
--- a/test/outparam-sl.myr
+++ b/test/outparam-sl.myr
@@ -1,6 +1,6 @@
const arr = [1,2,3,4]
const f = {out
- *out = arr[1,3]
+ *out = arr[1:3]
}
const main = {
--- a/test/slice.myr
+++ b/test/slice.myr
@@ -2,7 +2,7 @@
var a : int[3]
var s
- s = a[,]
+ s = a[:]
s[0] = 3
s[1] = 4
s[2] = s[0] + s[1] + s.len
--- a/test/slicelen.myr
+++ b/test/slicelen.myr
@@ -2,6 +2,6 @@
var a : int[8]
var s
- s = a[1,6]
+ s = a[1:6]
-> s.len
}