Jelajahi Sumber

Remove : from vars in exec semantics (#504)

Going through tests, funptr1.6c is the main spot I see a real change, I added parens to get around an issue parsing fnty.

Co-authored-by: Geoff Romer <gromer@google.com>
Jon Meow 5 tahun lalu
induk
melakukan
05663633d3
61 mengubah file dengan 144 tambahan dan 136 penghapusan
  1. 37 29
      executable_semantics/syntax/parser.ypp
  2. 2 2
      executable_semantics/testdata/assignment_copy1.6c
  3. 2 2
      executable_semantics/testdata/assignment_copy2.6c
  4. 2 2
      executable_semantics/testdata/block1.6c
  5. 1 1
      executable_semantics/testdata/block2.6c
  6. 1 1
      executable_semantics/testdata/break1.6c
  7. 7 7
      executable_semantics/testdata/choice1.6c
  8. 1 1
      executable_semantics/testdata/continue1.6c
  9. 1 1
      executable_semantics/testdata/experimental_continuation1.6c
  10. 1 1
      executable_semantics/testdata/experimental_continuation2.6c
  11. 1 1
      executable_semantics/testdata/experimental_continuation3.6c
  12. 2 2
      executable_semantics/testdata/experimental_continuation4.6c
  13. 2 2
      executable_semantics/testdata/experimental_continuation5.6c
  14. 4 4
      executable_semantics/testdata/experimental_continuation6.6c
  15. 3 3
      executable_semantics/testdata/experimental_continuation7.6c
  16. 3 3
      executable_semantics/testdata/experimental_continuation8.6c
  17. 3 3
      executable_semantics/testdata/experimental_continuation9.6c
  18. 1 1
      executable_semantics/testdata/fun1.6c
  19. 2 2
      executable_semantics/testdata/fun2.6c
  20. 1 1
      executable_semantics/testdata/fun3.6c
  21. 1 1
      executable_semantics/testdata/fun5.6c
  22. 2 2
      executable_semantics/testdata/fun6_fail_type.6c
  23. 1 1
      executable_semantics/testdata/fun_named_params.6c
  24. 1 1
      executable_semantics/testdata/fun_named_params2.6c
  25. 1 1
      executable_semantics/testdata/fun_recur.6c
  26. 2 2
      executable_semantics/testdata/funptr1.6c
  27. 1 1
      executable_semantics/testdata/global_variable1.6c
  28. 1 1
      executable_semantics/testdata/global_variable2.6c
  29. 1 1
      executable_semantics/testdata/global_variable3.6c
  30. 1 1
      executable_semantics/testdata/global_variable4.6c
  31. 2 2
      executable_semantics/testdata/global_variable5.6c
  32. 2 2
      executable_semantics/testdata/global_variable6.6c
  33. 1 1
      executable_semantics/testdata/global_variable7.6c
  34. 2 2
      executable_semantics/testdata/global_variable8.6c
  35. 2 2
      executable_semantics/testdata/match_any_int.6c
  36. 1 1
      executable_semantics/testdata/match_int.6c
  37. 1 1
      executable_semantics/testdata/match_int_default.6c
  38. 4 4
      executable_semantics/testdata/match_type.6c
  39. 1 1
      executable_semantics/testdata/next.6c
  40. 1 1
      executable_semantics/testdata/pattern_init.6c
  41. 1 1
      executable_semantics/testdata/pattern_variable_fail.6c
  42. 1 1
      executable_semantics/testdata/record1.6c
  43. 3 3
      executable_semantics/testdata/struct1.6c
  44. 4 4
      executable_semantics/testdata/struct2.6c
  45. 2 2
      executable_semantics/testdata/struct3.6c
  46. 2 2
      executable_semantics/testdata/tuple1.6c
  47. 2 2
      executable_semantics/testdata/tuple2.6c
  48. 1 1
      executable_semantics/testdata/tuple3.6c
  49. 1 1
      executable_semantics/testdata/tuple4.6c
  50. 1 1
      executable_semantics/testdata/tuple5.6c
  51. 2 2
      executable_semantics/testdata/tuple_assign.6c
  52. 2 2
      executable_semantics/testdata/tuple_equality.6c
  53. 2 2
      executable_semantics/testdata/tuple_equality2.6c
  54. 2 2
      executable_semantics/testdata/tuple_equality3.6c
  55. 2 2
      executable_semantics/testdata/tuple_match.6c
  56. 2 2
      executable_semantics/testdata/tuple_match2.6c
  57. 2 2
      executable_semantics/testdata/tuple_match3.6c
  58. 2 2
      executable_semantics/testdata/type_compute.6c
  59. 1 1
      executable_semantics/testdata/type_compute2.6c
  60. 2 2
      executable_semantics/testdata/type_compute3.6c
  61. 1 1
      executable_semantics/testdata/while1.6c

+ 37 - 29
executable_semantics/syntax/parser.ypp

@@ -104,6 +104,7 @@ void yy::parser::error(
 %type <const Carbon::Expression*> return_type
 %type <const Carbon::Expression*> paren_expression
 %type <const Carbon::Expression*> tuple
+%type <const Carbon::Expression*> var_compatible_expression
 %type <Carbon::Member*> variable_declaration
 %type <Carbon::Member*> member
 %type <std::list<Carbon::Member*>*> member_list
@@ -164,7 +165,7 @@ void yy::parser::error(
 ;
 
 %precedence "{" "}"
-%precedence ":" "," DBLARROW
+%precedence "," DBLARROW
 %left OR AND
 %nonassoc EQUAL_EQUAL
 %left "+" "-"
@@ -183,16 +184,34 @@ pattern:
     { $$ = $1; }
 ;
 expression:
-  identifier
+  var_compatible_expression
+    { $$ = $1; }
+| var_compatible_expression identifier
+    { $$ = Carbon::Expression::MakeVarPat(yylineno, $2, $1); }
+| expression EQUAL_EQUAL expression
+    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Eq, $1, $3); }
+| expression "+" expression
+    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Add, $1, $3); }
+| expression "-" expression
+    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Sub, $1, $3); }
+| expression AND expression
+    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::And, $1, $3); }
+| expression OR expression
+    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Or, $1, $3); }
+| NOT expression
+    { $$ = Carbon::Expression::MakeUnOp(yylineno, Carbon::Operator::Not, $2); }
+| "-" expression %prec UNARY_MINUS
+    { $$ = Carbon::Expression::MakeUnOp(yylineno, Carbon::Operator::Neg, $2); }
+| FNTY tuple return_type
+    { $$ = Carbon::Expression::MakeFunType(yylineno, $2, $3); }
+;
+// This is the subset of `expression` which can act as the type part of a
+// variable declaration without creating ambiguity.
+var_compatible_expression:
+  paren_expression
+    { $$ = $1; }
+| identifier
     { $$ = Carbon::Expression::MakeVar(yylineno, $1); }
-| expression designator
-    { $$ = Carbon::Expression::MakeGetField(yylineno, $1, $2); }
-| expression "[" expression "]"
-    { $$ = Carbon::Expression::MakeIndex(yylineno, $1, $3); }
-| expression ":" identifier
-    { $$ = Carbon::Expression::MakeVarPat(yylineno, $3, $1); }
-| integer_literal
-    { $$ = Carbon::Expression::MakeInt(yylineno, $1); }
 | TRUE
     { $$ = Carbon::Expression::MakeBool(yylineno, true); }
 | FALSE
@@ -207,25 +226,14 @@ expression:
     { $$ = Carbon::Expression::MakeAutoType(yylineno); }
 | CONTINUATION_TYPE
     { $$ = Carbon::Expression::MakeContinuationType(yylineno); }
-| paren_expression { $$ = $1; }
-| expression EQUAL_EQUAL expression
-    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Eq, $1, $3); }
-| expression "+" expression
-    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Add, $1, $3); }
-| expression "-" expression
-    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Sub, $1, $3); }
-| expression AND expression
-    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::And, $1, $3); }
-| expression OR expression
-    { $$ = Carbon::Expression::MakeBinOp(yylineno, Carbon::Operator::Or, $1, $3); }
-| NOT expression
-    { $$ = Carbon::Expression::MakeUnOp(yylineno, Carbon::Operator::Not, $2); }
-| "-" expression %prec UNARY_MINUS
-    { $$ = Carbon::Expression::MakeUnOp(yylineno, Carbon::Operator::Neg, $2); }
+| integer_literal
+    { $$ = Carbon::Expression::MakeInt(yylineno, $1); }
+| expression designator
+    { $$ = Carbon::Expression::MakeGetField(yylineno, $1, $2); }
+| expression "[" expression "]"
+    { $$ = Carbon::Expression::MakeIndex(yylineno, $1, $3); }
 | expression tuple
     { $$ = Carbon::Expression::MakeCall(yylineno, $1, $2); }
-| FNTY tuple return_type
-    { $$ = Carbon::Expression::MakeFunType(yylineno, $2, $3); }
 ;
 designator: "." identifier { $$ = $2; }
 ;
@@ -340,8 +348,8 @@ function_declaration:
   FN identifier tuple return_type ";"
     { $$ = MakeFunDef(yylineno, $2, $4, $3, 0); }
 ;
-variable_declaration: expression ":" identifier
-    { $$ = MakeField(yylineno, $3, $1); }
+variable_declaration: var_compatible_expression identifier
+    { $$ = MakeField(yylineno, $2, $1); }
 ;
 member: VAR variable_declaration ";"
     { $$ = $2; }

+ 2 - 2
executable_semantics/testdata/assignment_copy1.6c

@@ -5,9 +5,9 @@
 // Test that assignment performs a copy and does not create an alias.
 
 fn main() -> Int {
-  var Int: x = -1;
+  var Int x = -1;
   {
-     var Int: y = 0;
+     var Int y = 0;
      x = y;
      // y dies here
   }

+ 2 - 2
executable_semantics/testdata/assignment_copy2.6c

@@ -5,8 +5,8 @@
 // Test that assignment performs a copy and does not create an alias.
 
 fn main() -> Int {
-  var Int: x = 0;
-  var Int: y = x;
+  var Int x = 0;
+  var Int y = x;
   x = 1;
   return y;
 }

+ 2 - 2
executable_semantics/testdata/block1.6c

@@ -3,9 +3,9 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var Int: x = 0;
+  var Int x = 0;
   {
-    var Int: x = 1;
+    var Int x = 1;
   }
   return x;
 }

+ 1 - 1
executable_semantics/testdata/block2.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var Int: x = 0;
+  var Int x = 0;
   {
     // empty block
   }

+ 1 - 1
executable_semantics/testdata/break1.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var Int: x = 2;
+  var Int x = 2;
   while (true) {
     if (x == 0)
       break;

+ 7 - 7
executable_semantics/testdata/choice1.6c

@@ -9,23 +9,23 @@ choice Ints {
 }
 
 fn main() -> Int {
-  var auto: x = Ints.None();
-  var auto: y = Ints.One(42);
-  var auto: n = 0;
+  var auto x = Ints.None();
+  var auto y = Ints.One(42);
+  var auto n = 0;
   match (y) {
     case Ints.None =>
       n = n + 2;
-    case Ints.One(auto: x) =>
+    case Ints.One(auto x) =>
       n = x + 1 - 42;
-    case Ints.Two(auto: a, auto: b) =>
+    case Ints.Two(auto a, auto b) =>
       n = 2;
   }
   match (x) {
-    case Ints.One(auto: x) =>
+    case Ints.One(auto x) =>
       n = x + 2;
     case Ints.None() =>
       n = n - 1;
-    case Ints.Two(auto: x, auto: y) =>
+    case Ints.Two(auto x, auto y) =>
       n = 5;
   }
   return n;

+ 1 - 1
executable_semantics/testdata/continue1.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: x = 2;
+  var auto x = 2;
   while (not (x == 0)) {
     x = x - 1;
     continue;

+ 1 - 1
executable_semantics/testdata/experimental_continuation1.6c

@@ -5,7 +5,7 @@
 // Test that creating a continuation doesn't do anything.
 
 fn main() -> Int {
-  var Int: x = 0;
+  var Int x = 0;
   __continuation k {
     x = x + 1;
   }

+ 1 - 1
executable_semantics/testdata/experimental_continuation2.6c

@@ -5,7 +5,7 @@
 // Test creating and running a continuation.
 
 fn main() -> Int {
-  var Int: x = 0;
+  var Int x = 0;
   __continuation k {
     x = x + 1;
   }

+ 1 - 1
executable_semantics/testdata/experimental_continuation3.6c

@@ -6,7 +6,7 @@
 // `__run`.
 
 fn main() -> Int {
-  var Int: x = 0;
+  var Int x = 0;
   __continuation k {
     x = x + 1;
     __await;

+ 2 - 2
executable_semantics/testdata/experimental_continuation4.6c

@@ -6,13 +6,13 @@
 // continuation as `k1`.
 
 fn main() -> Int {
-  var Int: x = 0;
+  var Int x = 0;
   __continuation k1 {
     x = x + 1;
     __await;
     x = x + 2;
   }
-  var __Continuation: k2 = k1;
+  var __Continuation k2 = k1;
   __run k1;
   __run k2;
   return x;

+ 2 - 2
executable_semantics/testdata/experimental_continuation5.6c

@@ -5,9 +5,9 @@
 // Test access to block-scoped variables upon resuming a continuation.
 
 fn main() -> Int {
-  var Int: y = 0;
+  var Int y = 0;
   __continuation k {
-    var Int: x = 0;
+    var Int x = 0;
     x = x + 1;
     __await;
     x = x + 2;

+ 4 - 4
executable_semantics/testdata/experimental_continuation6.6c

@@ -4,9 +4,9 @@
 
 // Test recursive functions inside continuations.
 
-var Int: current = 0;
+var Int current = 0;
 
-fn CountUpTo(Int: x) -> Int {
+fn CountUpTo(Int x) -> Int {
   if (x == 0) {
     current = 0;
     __await;
@@ -22,8 +22,8 @@ fn main() -> Int {
   __continuation k {
     CountUpTo(5);
   }
-  var Int: sum = 0;
-  var Int: count = 5;
+  var Int sum = 0;
+  var Int count = 5;
   while (not (count == 0)) {
     __run k;
     sum = sum + current;

+ 3 - 3
executable_semantics/testdata/experimental_continuation7.6c

@@ -6,18 +6,18 @@
 // on the stack such as the variable `x`. In this example the copy
 // happens after the variable `x` is created.
 
-var Int: y = 0;
+var Int y = 0;
 
 fn main() -> Int {
   __continuation k1 {
-    var Int: x = 0;
+    var Int x = 0;
     x = x + 1;
     __await;
     x = x + 2;
     y = x;
   }
   __run k1;
-  var __Continuation: k2 = k1;
+  var __Continuation k2 = k1;
   __run k2;
   return y;
 }

+ 3 - 3
executable_semantics/testdata/experimental_continuation8.6c

@@ -7,16 +7,16 @@
 // happens before the variable `x` is created, so each continuation
 // creates a different `x`.
 
-var Int: y = 0;
+var Int y = 0;
 
 fn main() -> Int {
   __continuation k1 {
-    var Int: x = 0;
+    var Int x = 0;
     x = x + 1;
     __await;
     y = x;
   }
-  var __Continuation: k2 = k1;
+  var __Continuation k2 = k1;
   __run k1;
   __run k2;
   __run k1;

+ 3 - 3
executable_semantics/testdata/experimental_continuation9.6c

@@ -7,15 +7,15 @@
 // is dangerous and can happen inside continuations.
 
 fn capture() -> __Continuation {
-  var Int: x = 1;
+  var Int x = 1;
   __continuation k {
-    var Int: y = x;
+    var Int y = x;
   }
   return k;
 }
 
 fn main() -> Int {
-  var __Continuation: k = capture();
+  var __Continuation k = capture();
   __run k; // error, lifetime of x is over
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/fun1.6c

@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn f(Int: x) -> Int {
+fn f(Int x) -> Int {
   return x - 1;
 }
 

+ 2 - 2
executable_semantics/testdata/fun2.6c

@@ -6,12 +6,12 @@
 // This makes sure that when the value in `x` dies,
 // it does not cause the value in `a` to also die.
 
-fn f(Int: x) -> Int {
+fn f(Int x) -> Int {
   return 0;
 }
 
 fn main() -> Int {
-  var Int: a = 0; var Int: b = 1;
+  var Int a = 0; var Int b = 1;
   f(a);
   b = a;
   return b;

+ 1 - 1
executable_semantics/testdata/fun3.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 // Test multiple arguments
-fn f(Int: x, Int: y) -> Int {
+fn f(Int x, Int y) -> Int {
   return x + y;
 }
 

+ 1 - 1
executable_semantics/testdata/fun5.6c

@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn add(Int: x, Int: y) => x + y;
+fn add(Int x, Int y) => x + y;
 
 fn main() -> Int {
   return add(1, 2) - 3;

+ 2 - 2
executable_semantics/testdata/fun6_fail_type.6c

@@ -2,10 +2,10 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn f(Int: x, Int: y) -> Int { return x + y; }
+fn f(Int x, Int y) -> Int { return x + y; }
 
 fn main() -> Int {
-  var (Int, Int): xy = (1, 2);
+  var (Int, Int) xy = (1, 2);
   // should fail to type-check
   return f(xy);
 }

+ 1 - 1
executable_semantics/testdata/fun_named_params.6c

@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn f(Int: x, .d = Int: y) => x + y;
+fn f(Int x, .d = Int y) => x + y;
 
 fn main() -> Int {
   return f(1, .d = 2) - 3;

+ 1 - 1
executable_semantics/testdata/fun_named_params2.6c

@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn f(Int: x, .d = Int: y, Int: z, .e = Int: a) => (x + y) - (z + a);
+fn f(Int x, .d = Int y, Int z, .e = Int a) => (x + y) - (z + a);
 
 fn main() -> Int {
   return 0;

+ 1 - 1
executable_semantics/testdata/fun_recur.6c

@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn f(Int: x) -> Int {
+fn f(Int x) -> Int {
   if (x == 0)
     return x;
   else

+ 2 - 2
executable_semantics/testdata/funptr1.6c

@@ -2,11 +2,11 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn add1(Int: x) -> Int {
+fn add1(Int x) -> Int {
   return x + 1;
 }
 
 fn main() -> Int {
-  var fnty(Int)->Int: f = add1;
+  var (fnty(Int)->Int) f = add1;
   return f(-1);
 }

+ 1 - 1
executable_semantics/testdata/global_variable1.6c

@@ -4,7 +4,7 @@
 
 // Test global variable initialization and read.
 
-var Int: zero = 0;
+var Int zero = 0;
 
 fn main() -> Int {
   return zero;

+ 1 - 1
executable_semantics/testdata/global_variable2.6c

@@ -5,7 +5,7 @@
 // Test that mutations to a global variable in one function is visible
 // in another function.
 
-var Int: flag = 1;
+var Int flag = 1;
 
 fn flipFlag() -> () {
   flag = 0;

+ 1 - 1
executable_semantics/testdata/global_variable3.6c

@@ -4,7 +4,7 @@
 
 // Test type checking of global variable. Error expected.
 
-var Int: flag = true;
+var Int flag = true;
 
 fn main() -> Int {
   return 0;

+ 1 - 1
executable_semantics/testdata/global_variable4.6c

@@ -4,7 +4,7 @@
 
 // Test mutation of a global variable.
 
-var Int: zero = 1;
+var Int zero = 1;
 
 fn main() -> Int {
   zero = 0;

+ 2 - 2
executable_semantics/testdata/global_variable5.6c

@@ -4,9 +4,9 @@
 
 // Test overshadowing of global variable.
 
-var Int: x = 1;
+var Int x = 1;
 
-fn identity(Int: x) {
+fn identity(Int x) {
   return x;
 }
 

+ 2 - 2
executable_semantics/testdata/global_variable6.6c

@@ -4,9 +4,9 @@
 
 // Test a global variable depending on another global.
 
-var Int: x = 0;
+var Int x = 0;
 
-var Int: y = x;
+var Int y = x;
 
 fn main() -> Int {
   return y;

+ 1 - 1
executable_semantics/testdata/global_variable7.6c

@@ -8,7 +8,7 @@ fn f() -> Int {
   return 0;
 }
 
-var Int: y = f();
+var Int y = f();
 
 fn main() -> Int {
   return y;

+ 2 - 2
executable_semantics/testdata/global_variable8.6c

@@ -5,9 +5,9 @@
 // Test that a global variable may not depend on a later global.
 // Error expected.
 
-var Int: x = y;
+var Int x = y;
 
-var Int: y = 0;
+var Int y = 0;
 
 fn main() -> Int {
   return x;

+ 2 - 2
executable_semantics/testdata/match_any_int.6c

@@ -3,9 +3,9 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: t = 5;
+  var auto t = 5;
   match (t) {
-    case Int: x =>
+    case Int x =>
       return x - 5;
   }
 }

+ 1 - 1
executable_semantics/testdata/match_int.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: t = 5;
+  var auto t = 5;
   match (t) {
     case 5 =>
       return 0;

+ 1 - 1
executable_semantics/testdata/match_int_default.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: t = 5;
+  var auto t = 5;
   match (t) {
     case 3 =>
       return -1;

+ 4 - 4
executable_semantics/testdata/match_type.6c

@@ -3,14 +3,14 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: t = fnty (Int,Int);
-  var Int: x = 0;
+  var auto t = fnty (Int,Int);
+  var Int x = 0;
   match (t) {
-    case Type: z =>
+    case Type z =>
       x = x + 1;
   }
   match (t) {
-    case fnty(Type: a,Type: b) =>
+    case fnty(Type a,Type b) =>
       x = x - 1;
   }
   return x;

+ 1 - 1
executable_semantics/testdata/next.6c

@@ -4,6 +4,6 @@
 
 fn main () -> Int
 {
-  var Int: x = 0;
+  var Int x = 0;
   return x;
 }

+ 1 - 1
executable_semantics/testdata/pattern_init.6c

@@ -3,6 +3,6 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (auto: x, auto: y) = (2, 3);
+  var (auto x, auto y) = (2, 3);
   return y - x - 1;
 }

+ 1 - 1
executable_semantics/testdata/pattern_variable_fail.6c

@@ -4,6 +4,6 @@
 
 fn main() -> Int {
   // error
-  Int : x;
+  Int x;
   return 1;
 }

+ 1 - 1
executable_semantics/testdata/record1.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (.x = Int, .y = Int): t2 = (.x = 2, .y = 5);
+  var (.x = Int, .y = Int) t2 = (.x = 2, .y = 5);
   t2.y = 3;
   return t2.y - t2.x - 1; // 3 - 2 - 1
 }

+ 3 - 3
executable_semantics/testdata/struct1.6c

@@ -3,11 +3,11 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 struct Point {
-  var Int: x;
-  var Int: y;
+  var Int x;
+  var Int y;
 }
 
 fn main() -> Int {
-  var auto: p = Point(.x = 1, .y = 2);
+  var auto p = Point(.x = 1, .y = 2);
   return p.y - p.x - 1;
 }

+ 4 - 4
executable_semantics/testdata/struct2.6c

@@ -3,13 +3,13 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 struct Point {
-  var Int: x;
-  var Int: y;
+  var Int x;
+  var Int y;
 }
 
 fn main() -> Int {
-  var auto: p1 = Point(.x = 1, .y = 2);
-  var auto: p2 = p1;
+  var auto p1 = Point(.x = 1, .y = 2);
+  var auto p2 = p1;
   p2.x = 3;
   return p1.x - 1;
 }

+ 2 - 2
executable_semantics/testdata/struct3.6c

@@ -3,8 +3,8 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 struct Point {
-  var Int: x;
-  var Int: y;
+  var Int x;
+  var Int y;
 }
 
 fn main() -> Int {

+ 2 - 2
executable_semantics/testdata/tuple1.6c

@@ -3,8 +3,8 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var Int: x = (1);
-  var (Int,Int): t2 = (5, 2);
+  var Int x = (1);
+  var (Int,Int) t2 = (5, 2);
   t2[0] = 3;
   return t2[0] - t2[1] - x;
 }

+ 2 - 2
executable_semantics/testdata/tuple2.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (Int,): t1 = (5,);
-  var (Int, Int): t2 = (2, 3,);
+  var (Int,) t1 = (5,);
+  var (Int, Int) t2 = (2, 3,);
   return t1[0] - t2[0] - t2[1];
 }

+ 1 - 1
executable_semantics/testdata/tuple3.6c

@@ -3,6 +3,6 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (Int, .x = Int): t = (3, .x = 2);
+  var (Int, .x = Int) t = (3, .x = 2);
   return t.x + 1 - t[0];
 }

+ 1 - 1
executable_semantics/testdata/tuple4.6c

@@ -3,6 +3,6 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: t = (.x = 2, 3);
+  var auto t = (.x = 2, 3);
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/tuple5.6c

@@ -5,6 +5,6 @@
 // Test the that field order matters for tuples.
 
 fn main() -> Int {
-  var (.x = Int, .y = Int): t = (.y = 2, .x = 3);
+  var (.x = Int, .y = Int) t = (.y = 2, .x = 3);
   return 0;
 }

+ 2 - 2
executable_semantics/testdata/tuple_assign.6c

@@ -3,8 +3,8 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: x = 0;
-  var auto: y = 1;
+  var auto x = 0;
+  var auto y = 1;
   (x, y) = (5, -5);
   return x + y;
 }

+ 2 - 2
executable_semantics/testdata/tuple_equality.6c

@@ -3,8 +3,8 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (Int,Int): t1 = (5, 2);
-  var (Int,Int): t2 = (5, 2);
+  var (Int,Int) t1 = (5, 2);
+  var (Int,Int) t2 = (5, 2);
   if (t1 == t2) {
     return 0;
   } else {

+ 2 - 2
executable_semantics/testdata/tuple_equality2.6c

@@ -3,8 +3,8 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (Int,Int): t1 = (5, 2);
-  var (Int,Int): t2 = (5, 4);
+  var (Int,Int) t1 = (5, 2);
+  var (Int,Int) t2 = (5, 4);
   if (t1 == t2) {
     return 1;
   } else {

+ 2 - 2
executable_semantics/testdata/tuple_equality3.6c

@@ -3,8 +3,8 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var (Int,Int): t1 = (5, 2);
-  var (Int,): t2 = (5,);
+  var (Int,Int) t1 = (5, 2);
+  var (Int,) t2 = (5,);
   if (t1 == t2) {
     return 1;
   } else {

+ 2 - 2
executable_semantics/testdata/tuple_match.6c

@@ -3,9 +3,9 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: t = (5, 2);
+  var auto t = (5, 2);
   match (t) {
-    case (auto: a, auto: b) =>
+    case (auto a, auto b) =>
       return a + b - 7;
   }
 }

+ 2 - 2
executable_semantics/testdata/tuple_match2.6c

@@ -5,9 +5,9 @@
 // Test matching with a mixture of positional and named fields.
 
 fn main() -> Int {
-  var auto: t = (2, .x = 5);
+  var auto t = (2, .x = 5);
   match (t) {
-    case (auto: a, .x = auto: b) =>
+    case (auto a, .x = auto b) =>
       return a - b + 3;
   }
 }

+ 2 - 2
executable_semantics/testdata/tuple_match3.6c

@@ -5,9 +5,9 @@
 // Test matching of a tuple inside a tuple.
 
 fn main() -> Int {
-  var auto: t = ((1,2),(3,4));
+  var auto t = ((1,2),(3,4));
   match (t) {
-    case ((auto: a, auto: b), auto: c) =>
+    case ((auto a, auto b), auto c) =>
       return a - b + c[0] - c[1] + 2;
   }
 }

+ 2 - 2
executable_semantics/testdata/type_compute.6c

@@ -2,11 +2,11 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn Id(Type: t) => t;
+fn Id(Type t) => t;
 
 // Test non-trivial type expression in variable declaration statement.
 
 fn main() -> Int {
-  var Id(Int): x = 0;
+  var Id(Int) x = 0;
   return x;
 }

+ 1 - 1
executable_semantics/testdata/type_compute2.6c

@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn Id(Type: t) => t;
+fn Id(Type t) => t;
 
 // Test non-trivial type expression in return type.
 

+ 2 - 2
executable_semantics/testdata/type_compute3.6c

@@ -2,11 +2,11 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-fn Id(Type: t) => t;
+fn Id(Type t) => t;
 
 // Test non-trivial type expression in parameter type.
 
-fn f(Id(Int): x) -> Int {
+fn f(Id(Int) x) -> Int {
   return x;
 }
 

+ 1 - 1
executable_semantics/testdata/while1.6c

@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
 fn main() -> Int {
-  var auto: x = 2;
+  var auto x = 2;
   while (not (x == 0))
     x = x - 1;
   return x;