瀏覽代碼

Rename main to Main for Carbon style consistency (#939)

Main() is more consistency with Carbon's naming guidelines. C# offers some precedent: https://docs.microsoft.com/en-us/dotnet/csharp/fundamentals/program-structure/main-command-line
Jon Meow 4 年之前
父節點
當前提交
6d822ababb
共有 100 個文件被更改,包括 104 次插入104 次删除
  1. 2 2
      executable_semantics/interpreter/exec_program.cpp
  2. 4 4
      executable_semantics/interpreter/type_checker.cpp
  3. 1 1
      executable_semantics/testdata/assignment_copy/destruct_original.carbon
  4. 1 1
      executable_semantics/testdata/assignment_copy/reassign_original.carbon
  5. 1 1
      executable_semantics/testdata/basic_syntax/choice.carbon
  6. 1 1
      executable_semantics/testdata/basic_syntax/fail_missing_var.carbon
  7. 1 1
      executable_semantics/testdata/basic_syntax/next.carbon
  8. 1 1
      executable_semantics/testdata/basic_syntax/placeholder_variable.carbon
  9. 1 1
      executable_semantics/testdata/basic_syntax/print.carbon
  10. 1 1
      executable_semantics/testdata/basic_syntax/record.carbon
  11. 1 1
      executable_semantics/testdata/basic_syntax/star.carbon
  12. 1 1
      executable_semantics/testdata/basic_syntax/var_tuple.carbon
  13. 1 1
      executable_semantics/testdata/basic_syntax/zero.carbon
  14. 1 1
      executable_semantics/testdata/block/empty.carbon
  15. 1 1
      executable_semantics/testdata/block/shadowing.carbon
  16. 1 1
      executable_semantics/testdata/class/assign.carbon
  17. 1 1
      executable_semantics/testdata/class/assign_member.carbon
  18. 1 1
      executable_semantics/testdata/class/fail_field_access_mismatch.carbon
  19. 1 1
      executable_semantics/testdata/class/fail_field_mismatch.carbon
  20. 1 1
      executable_semantics/testdata/class/fail_field_missing.carbon
  21. 1 1
      executable_semantics/testdata/class/function_param.carbon
  22. 1 1
      executable_semantics/testdata/class/global_var.carbon
  23. 1 1
      executable_semantics/testdata/class/temp.carbon
  24. 1 1
      executable_semantics/testdata/class/var.carbon
  25. 1 1
      executable_semantics/testdata/experimental_continuation/await_maintains_scope.carbon
  26. 1 1
      executable_semantics/testdata/experimental_continuation/creation_is_noop.carbon
  27. 1 1
      executable_semantics/testdata/experimental_continuation/fail_continuation_syntax.carbon
  28. 1 1
      executable_semantics/testdata/experimental_continuation/fail_lifetime.carbon
  29. 1 1
      executable_semantics/testdata/experimental_continuation/recursive.carbon
  30. 1 1
      executable_semantics/testdata/experimental_continuation/run.carbon
  31. 1 1
      executable_semantics/testdata/experimental_continuation/run_with_await.carbon
  32. 1 1
      executable_semantics/testdata/experimental_continuation/shallow_copy.carbon
  33. 1 1
      executable_semantics/testdata/function/auto_return/add.carbon
  34. 1 1
      executable_semantics/testdata/function/auto_return/fail_direct_recurse.carbon
  35. 1 1
      executable_semantics/testdata/function/auto_return/fail_multiple_returns.carbon
  36. 1 1
      executable_semantics/testdata/function/auto_return/fail_no_return.carbon
  37. 1 1
      executable_semantics/testdata/function/auto_return/fail_separate_decl.carbon
  38. 1 1
      executable_semantics/testdata/function/auto_return/modify_arg_type.carbon
  39. 1 1
      executable_semantics/testdata/function/auto_return/modify_return_type.carbon
  40. 1 1
      executable_semantics/testdata/function/auto_return/type.carbon
  41. 1 1
      executable_semantics/testdata/function/empty_params.carbon
  42. 1 1
      executable_semantics/testdata/function/fail_call_with_tuple.carbon
  43. 1 1
      executable_semantics/testdata/function/fail_match_no_return.carbon
  44. 1 1
      executable_semantics/testdata/function/fail_match_partial_return.carbon
  45. 1 1
      executable_semantics/testdata/function/fail_non_exhaustive_match.carbon
  46. 1 1
      executable_semantics/testdata/function/fnty.carbon
  47. 1 1
      executable_semantics/testdata/function/ignored_parameter.carbon
  48. 1 1
      executable_semantics/testdata/function/multiple_args.carbon
  49. 1 1
      executable_semantics/testdata/function/param_lifetime.carbon
  50. 1 1
      executable_semantics/testdata/function/recursive.carbon
  51. 1 1
      executable_semantics/testdata/function/return.carbon
  52. 1 1
      executable_semantics/testdata/function/return_exhaustive_match.carbon
  53. 1 1
      executable_semantics/testdata/function/type_match.carbon
  54. 1 1
      executable_semantics/testdata/generic_function/apply.carbon
  55. 1 1
      executable_semantics/testdata/generic_function/fail_not_addable.carbon
  56. 1 1
      executable_semantics/testdata/generic_function/fail_type_deduction_mismatch.carbon
  57. 1 1
      executable_semantics/testdata/generic_function/fail_type_deduction_unused.carbon
  58. 1 1
      executable_semantics/testdata/generic_function/non_generic_param.carbon
  59. 1 1
      executable_semantics/testdata/generic_function/return_val.carbon
  60. 1 1
      executable_semantics/testdata/generic_function/swap.carbon
  61. 1 1
      executable_semantics/testdata/generic_function/tuple_map.carbon
  62. 1 1
      executable_semantics/testdata/generic_function/type_matching.carbon
  63. 1 1
      executable_semantics/testdata/global_variable/fail_init_order.carbon
  64. 1 1
      executable_semantics/testdata/global_variable/fail_init_type_mismatch.carbon
  65. 1 1
      executable_semantics/testdata/global_variable/init_and_read.carbon
  66. 1 1
      executable_semantics/testdata/global_variable/init_from_function.carbon
  67. 1 1
      executable_semantics/testdata/global_variable/init_order.carbon
  68. 1 1
      executable_semantics/testdata/global_variable/shadowing.carbon
  69. 1 1
      executable_semantics/testdata/global_variable/write.carbon
  70. 1 1
      executable_semantics/testdata/global_variable/write_from_function.carbon
  71. 1 1
      executable_semantics/testdata/if_else/if_else.carbon
  72. 1 1
      executable_semantics/testdata/if_else/if_else_if.carbon
  73. 1 1
      executable_semantics/testdata/if_else/if_else_if_else.carbon
  74. 1 1
      executable_semantics/testdata/if_else/if_false.carbon
  75. 1 1
      executable_semantics/testdata/if_else/if_nesting.carbon
  76. 1 1
      executable_semantics/testdata/if_else/if_true.carbon
  77. 1 1
      executable_semantics/testdata/import/fail_nonexistent_library.carbon
  78. 1 1
      executable_semantics/testdata/import/fail_nonexistent_package.carbon
  79. 1 1
      executable_semantics/testdata/import/fail_order.carbon
  80. 1 1
      executable_semantics/testdata/match/any_int.carbon
  81. 1 1
      executable_semantics/testdata/match/int.carbon
  82. 1 1
      executable_semantics/testdata/match/int_default.carbon
  83. 1 1
      executable_semantics/testdata/match/no_match.carbon
  84. 1 1
      executable_semantics/testdata/match/placeholder.carbon
  85. 1 1
      executable_semantics/testdata/package/fail_missing.carbon
  86. 1 1
      executable_semantics/testdata/package/with_library.carbon
  87. 1 1
      executable_semantics/testdata/return/explicit_empty.carbon
  88. 1 1
      executable_semantics/testdata/return/fail_explicit_with_no_return.carbon
  89. 1 1
      executable_semantics/testdata/return/fail_explicit_with_plain_return.carbon
  90. 1 1
      executable_semantics/testdata/return/fail_implicit_with_explicit_return.carbon
  91. 1 1
      executable_semantics/testdata/return/implicit_with_no_return.carbon
  92. 1 1
      executable_semantics/testdata/return/implicit_with_plain_return.carbon
  93. 1 1
      executable_semantics/testdata/string/basic.carbon
  94. 1 1
      executable_semantics/testdata/string/fail_hex_lower.carbon
  95. 1 1
      executable_semantics/testdata/string/fail_hex_truncated.carbon
  96. 1 1
      executable_semantics/testdata/string/fail_invalid_escape.carbon
  97. 1 1
      executable_semantics/testdata/string/fail_newline.carbon
  98. 1 1
      executable_semantics/testdata/string/fail_octal.carbon
  99. 1 1
      executable_semantics/testdata/string/fail_tab.carbon
  100. 1 1
      executable_semantics/testdata/string/hex.carbon

+ 2 - 2
executable_semantics/interpreter/exec_program.cpp

@@ -62,9 +62,9 @@ void ExecProgram(Nonnull<Arena*> arena, AST ast, bool trace) {
     llvm::outs() << "********** starting execution **********\n";
   }
 
-  SourceLocation source_loc("<main()>", 0);
+  SourceLocation source_loc("<Main()>", 0);
   Nonnull<Expression*> call_main = arena->New<CallExpression>(
-      source_loc, arena->New<IdentifierExpression>(source_loc, "main"),
+      source_loc, arena->New<IdentifierExpression>(source_loc, "Main"),
       arena->New<TupleLiteral>(source_loc));
   int result =
       Interpreter(arena, trace).InterpProgram(ast.declarations, call_main);

+ 4 - 4
executable_semantics/interpreter/type_checker.cpp

@@ -1044,8 +1044,8 @@ auto TypeChecker::TypeCheckFunDef(FunctionDeclaration* f, TypeEnv types,
       TypeCheckPattern(&f->param_pattern(), types, values, std::nullopt);
   // Evaluate the return type expression
   auto return_type = interpreter_.InterpPattern(values, &f->return_type());
-  if (f->name() == "main") {
-    ExpectExactType(f->source_loc(), "return type of `main`",
+  if (f->name() == "Main") {
+    ExpectExactType(f->source_loc(), "return type of `Main`",
                     arena_->New<IntType>(), return_type);
     // TODO: Check that main doesn't have any parameters.
   }
@@ -1230,7 +1230,7 @@ auto TypeChecker::TopLevel(std::vector<Nonnull<Declaration*>>* fs)
   bool found_main = false;
 
   for (auto const& d : *fs) {
-    if (GetName(*d) == "main") {
+    if (GetName(*d) == "Main") {
       found_main = true;
     }
     TopLevel(d, &tops);
@@ -1238,7 +1238,7 @@ auto TypeChecker::TopLevel(std::vector<Nonnull<Declaration*>>* fs)
 
   if (found_main == false) {
     FATAL_COMPILATION_ERROR_NO_LINE()
-        << "program must contain a function named `main`";
+        << "program must contain a function named `Main`";
   }
   return tops;
 }

+ 1 - 1
executable_semantics/testdata/assignment_copy/destruct_original.carbon

@@ -13,7 +13,7 @@ package ExecutableSemanticsTest api;
 
 // Test that assignment performs a copy and does not create an alias.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = -1;
   {
      var y: i32 = 0;

+ 1 - 1
executable_semantics/testdata/assignment_copy/reassign_original.carbon

@@ -13,7 +13,7 @@ package ExecutableSemanticsTest api;
 
 // Test that assignment performs a copy and does not create an alias.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   var y: i32 = x;
   x = 1;

+ 1 - 1
executable_semantics/testdata/basic_syntax/choice.carbon

@@ -17,7 +17,7 @@ choice Ints {
   Two(i32,i32)
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: auto = Ints.None();
   var y: auto = Ints.One(42);
   var n: auto = 0;

+ 1 - 1
executable_semantics/testdata/basic_syntax/fail_missing_var.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   // error
   x : i32;
   return 1;

+ 1 - 1
executable_semantics/testdata/basic_syntax/next.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main () -> i32
+fn Main () -> i32
 {
   var x: i32 = 0;
   return x;

+ 1 - 1
executable_semantics/testdata/basic_syntax/placeholder_variable.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var _: auto = 1;
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/basic_syntax/print.carbon

@@ -12,7 +12,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var s: auto = "Hello world!\n";
   Print(s);
   return 0;

+ 1 - 1
executable_semantics/testdata/basic_syntax/record.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var t2: {.x: i32, .y: i32} = {.x = 2, .y = 5};
   t2.y = 3;
   return t2.y - t2.x - 1; // 3 - 2 - 1

+ 1 - 1
executable_semantics/testdata/basic_syntax/star.carbon

@@ -20,6 +20,6 @@ fn F(n: i32, p: i32*, q: i32***) -> i32* {
   return **q;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/basic_syntax/var_tuple.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var (x: auto, y: auto) = (2, 3);
   return y - x - 1;
 }

+ 1 - 1
executable_semantics/testdata/basic_syntax/zero.carbon

@@ -11,6 +11,6 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/block/empty.carbon

@@ -15,7 +15,7 @@ fn DoNothing() {
   // Empty block
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   DoNothing();
   return x;

+ 1 - 1
executable_semantics/testdata/block/shadowing.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   {
     var x: i32 = 1;

+ 1 - 1
executable_semantics/testdata/class/assign.carbon

@@ -16,7 +16,7 @@ class Point {
   var y: i32;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var p1: Point = {.x = 1, .y = 2};
   var p2: auto = p1;
   p2 = {.x = 3, .y = 2};

+ 1 - 1
executable_semantics/testdata/class/assign_member.carbon

@@ -16,7 +16,7 @@ class Point {
   var y: i32;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var p1: Point = {.x = 1, .y = 2};
   var p2: auto = p1;
   p2.x = 3;

+ 1 - 1
executable_semantics/testdata/class/fail_field_access_mismatch.carbon

@@ -16,7 +16,7 @@ class Point {
   var y: i32;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var p: Point = {.x = 1, .y = 2};
   return p.z - 1;
 }

+ 1 - 1
executable_semantics/testdata/class/fail_field_mismatch.carbon

@@ -16,7 +16,7 @@ class Point {
   var y: i32;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var p: Point = {.x = 1, .z = 2};
   return p.x - 1;
 }

+ 1 - 1
executable_semantics/testdata/class/fail_field_missing.carbon

@@ -16,7 +16,7 @@ class Point {
   var y: i32;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var p: Point = {.x = 1};
   return p.x - 1;
 }

+ 1 - 1
executable_semantics/testdata/class/function_param.carbon

@@ -20,6 +20,6 @@ fn GetX(p: Point) -> i32 {
   return p.x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return GetX({.x = 1, .y = 2}) - 1;
 }

+ 1 - 1
executable_semantics/testdata/class/global_var.carbon

@@ -18,6 +18,6 @@ class Point {
 
 var p: Point = {.x = 1, .y = 2};
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return p.y - p.x - 1;
 }

+ 1 - 1
executable_semantics/testdata/class/temp.carbon

@@ -20,6 +20,6 @@ fn MakePoint() -> Point {
   return {.x = 1, .y = 2};
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return MakePoint().x - 1;
 }

+ 1 - 1
executable_semantics/testdata/class/var.carbon

@@ -16,7 +16,7 @@ class Point {
   var y: i32;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var p: Point = {.x = 1, .y = 2};
   return p.y - p.x - 1;
 }

+ 1 - 1
executable_semantics/testdata/experimental_continuation/await_maintains_scope.carbon

@@ -13,7 +13,7 @@ package ExecutableSemanticsTest api;
 
 // Test access to block-scoped variables upon resuming a continuation.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var y: i32 = 0;
   __continuation k {
     var x: i32 = 0;

+ 1 - 1
executable_semantics/testdata/experimental_continuation/creation_is_noop.carbon

@@ -13,7 +13,7 @@ package ExecutableSemanticsTest api;
 
 // Test that creating a continuation doesn't do anything.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   __continuation k {
     x = x + 1;

+ 1 - 1
executable_semantics/testdata/experimental_continuation/fail_continuation_syntax.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   __continuation k x = 3;
   __run k;

+ 1 - 1
executable_semantics/testdata/experimental_continuation/fail_lifetime.carbon

@@ -23,7 +23,7 @@ fn capture() -> __Continuation {
   return k;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var k: __Continuation = capture();
   __run k; // error, lifetime of x is over
   return 0;

+ 1 - 1
executable_semantics/testdata/experimental_continuation/recursive.carbon

@@ -27,7 +27,7 @@ fn CountUpTo(x: i32) -> i32 {
   }
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   __continuation k {
     CountUpTo(5);
   }

+ 1 - 1
executable_semantics/testdata/experimental_continuation/run.carbon

@@ -13,7 +13,7 @@ package ExecutableSemanticsTest api;
 
 // Test creating and running a continuation.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   __continuation k {
     x = x + 1;

+ 1 - 1
executable_semantics/testdata/experimental_continuation/run_with_await.carbon

@@ -14,7 +14,7 @@ package ExecutableSemanticsTest api;
 // Test pausing a continuation with `__await` and restarting it with
 // `__run`.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   __continuation k {
     x = x + 1;

+ 1 - 1
executable_semantics/testdata/experimental_continuation/shallow_copy.carbon

@@ -22,7 +22,7 @@ fn Foo() {
   x = x + 2;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   __continuation k1 {
     Foo();
   }

+ 1 - 1
executable_semantics/testdata/function/auto_return/add.carbon

@@ -13,6 +13,6 @@ package ExecutableSemanticsTest api;
 
 fn add(x: i32, y: i32) -> auto { return x + y; }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return add(1, 2) - 3;
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/fail_direct_recurse.carbon

@@ -20,6 +20,6 @@ fn Recurse(x: i32, do_recurse: Bool) -> auto {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return Recurse(1, true) - 3;
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/fail_multiple_returns.carbon

@@ -21,6 +21,6 @@ fn Add(x: i32, y: i32) -> auto {
   }
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return Add(1, 2) - 3;
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/fail_no_return.carbon

@@ -14,6 +14,6 @@ package ExecutableSemanticsTest api;
 fn NoReturn() -> auto {
 }
 
-fn main() {
+fn Main() {
   NoReturn();
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/fail_separate_decl.carbon

@@ -16,6 +16,6 @@ fn Add(x: i32, y: i32) -> auto;
 
 fn Add(x: i32, y: i32) -> auto { return x + y; }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return Add(1, 2) - 3;
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/modify_arg_type.carbon

@@ -19,6 +19,6 @@ fn f(x: Id(i32)) -> i32 {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return f(0);
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/modify_return_type.carbon

@@ -15,6 +15,6 @@ fn Id(t: Type) -> auto { return t; }
 
 // Test non-trivial type expression in return type.
 
-fn main() -> Id(i32) {
+fn Main() -> Id(i32) {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/function/auto_return/type.carbon

@@ -15,7 +15,7 @@ fn Id(t: Type) -> auto { return t; }
 
 // Test non-trivial type expression in variable declaration statement.
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: Id(i32) = 0;
   return x;
 }

+ 1 - 1
executable_semantics/testdata/function/empty_params.carbon

@@ -14,7 +14,7 @@ package ExecutableSemanticsTest api;
 // Test empty parameters and return type
 fn f() { }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   f();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/function/fail_call_with_tuple.carbon

@@ -13,7 +13,7 @@ package ExecutableSemanticsTest api;
 
 fn f(x: i32, y: i32) -> i32 { return x + y; }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var xy: (i32, i32) = (1, 2);
   // should fail to type-check
   return f(xy);

+ 1 - 1
executable_semantics/testdata/function/fail_match_no_return.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   match(0) {
     case 1 => { x = 1; }

+ 1 - 1
executable_semantics/testdata/function/fail_match_partial_return.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   match (0) {
     case 1 => { x = 1; }

+ 1 - 1
executable_semantics/testdata/function/fail_non_exhaustive_match.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   match (0) {
     case 1 => return 0;
   }

+ 1 - 1
executable_semantics/testdata/function/fnty.carbon

@@ -15,7 +15,7 @@ fn add1(x: i32) -> i32 {
   return x + 1;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var f: __Fn(i32)->i32 = add1;
   return f(-1);
 }

+ 1 - 1
executable_semantics/testdata/function/ignored_parameter.carbon

@@ -15,6 +15,6 @@ fn ReturnSecond(_: i32, x: i32) -> i32 {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return ReturnSecond(1, 0);
 }

+ 1 - 1
executable_semantics/testdata/function/multiple_args.carbon

@@ -16,6 +16,6 @@ fn f(x: i32, y: i32) -> i32 {
   return x + y;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return f(2,3) - 5;
 }

+ 1 - 1
executable_semantics/testdata/function/param_lifetime.carbon

@@ -19,7 +19,7 @@ fn f(x: i32) -> i32 {
   return 0;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var a: i32 = 0; var b: i32 = 1;
   f(a);
   b = a;

+ 1 - 1
executable_semantics/testdata/function/recursive.carbon

@@ -19,6 +19,6 @@ fn f(x: i32) -> i32 {
   }
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return f(2);
 }

+ 1 - 1
executable_semantics/testdata/function/return.carbon

@@ -15,6 +15,6 @@ fn f(x: i32) -> i32 {
   return x - 1;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return f(1);
 }

+ 1 - 1
executable_semantics/testdata/function/return_exhaustive_match.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   match (0) {
     case _: auto => return 1;
   }

+ 1 - 1
executable_semantics/testdata/function/type_match.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var t: (auto, (i32, i32)) = ((1,2),(3,4));
   return t[0][0] + t[1][1] - 5;
 }

+ 1 - 1
executable_semantics/testdata/generic_function/apply.carbon

@@ -23,6 +23,6 @@ fn positive(x: Bool) -> i32 {
   }
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return apply(positive, false);
 }

+ 1 - 1
executable_semantics/testdata/generic_function/fail_not_addable.carbon

@@ -17,6 +17,6 @@ fn id[T:! Type](x: T) -> T {
   return x + 0;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return id(0);
 }

+ 1 - 1
executable_semantics/testdata/generic_function/fail_type_deduction_mismatch.carbon

@@ -17,6 +17,6 @@ fn fst[T:! Type](x: T, y: T) -> T {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return fst(0, true);
 }

+ 1 - 1
executable_semantics/testdata/generic_function/fail_type_deduction_unused.carbon

@@ -15,6 +15,6 @@ fn id[T:! Type](x: i32) -> i32 {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return id(0);
 }

+ 1 - 1
executable_semantics/testdata/generic_function/non_generic_param.carbon

@@ -15,6 +15,6 @@ fn snd[T:! Type](x: i32, y: T) -> T {
   return y;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return snd(0, 1);
 }

+ 1 - 1
executable_semantics/testdata/generic_function/return_val.carbon

@@ -15,6 +15,6 @@ fn id[T:! Type](x: T) -> T {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return id(0);
 }

+ 1 - 1
executable_semantics/testdata/generic_function/swap.carbon

@@ -15,6 +15,6 @@ fn swap[T:! Type, U:! Type](tuple: (T, U)) -> (U, T) {
   return (tuple[1], tuple[0]);
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return swap((0, true))[1];
 }

+ 1 - 1
executable_semantics/testdata/generic_function/tuple_map.carbon

@@ -17,6 +17,6 @@ fn map[T:! Type](f: __Fn (T) -> T, tuple: (T, T)) -> (T, T) {
 
 fn inc(x: i32) -> i32 { return x + 1; }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return map(inc, (0, 2))[0];
 }

+ 1 - 1
executable_semantics/testdata/generic_function/type_matching.carbon

@@ -15,6 +15,6 @@ fn fst[T:! Type](x: T, y: T) -> T {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return fst(0, 1);
 }

+ 1 - 1
executable_semantics/testdata/global_variable/fail_init_order.carbon

@@ -18,6 +18,6 @@ var x: i32 = y;
 
 var y: i32 = 0;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return x;
 }

+ 1 - 1
executable_semantics/testdata/global_variable/fail_init_type_mismatch.carbon

@@ -15,6 +15,6 @@ package ExecutableSemanticsTest api;
 
 var flag: i32 = true;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/global_variable/init_and_read.carbon

@@ -15,6 +15,6 @@ package ExecutableSemanticsTest api;
 
 var zero: i32 = 0;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return zero;
 }

+ 1 - 1
executable_semantics/testdata/global_variable/init_from_function.carbon

@@ -19,6 +19,6 @@ fn f() -> i32 {
 
 var y: i32 = f();
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return y;
 }

+ 1 - 1
executable_semantics/testdata/global_variable/init_order.carbon

@@ -17,6 +17,6 @@ var x: i32 = 0;
 
 var y: i32 = x;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return y;
 }

+ 1 - 1
executable_semantics/testdata/global_variable/shadowing.carbon

@@ -19,6 +19,6 @@ fn identity(x: i32) -> i32 {
   return x;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return identity(0);
 }

+ 1 - 1
executable_semantics/testdata/global_variable/write.carbon

@@ -15,7 +15,7 @@ package ExecutableSemanticsTest api;
 
 var zero: i32 = 1;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   zero = 0;
   return zero;
 }

+ 1 - 1
executable_semantics/testdata/global_variable/write_from_function.carbon

@@ -20,7 +20,7 @@ fn flipFlag() {
   flag = 0;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   flipFlag();
   return flag;
 }

+ 1 - 1
executable_semantics/testdata/if_else/if_else.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   if (0 == 1) {
     return 1;
   } else {

+ 1 - 1
executable_semantics/testdata/if_else/if_else_if.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   if (0 == 1) {
     return 1;
   } else if (0 == 0) {

+ 1 - 1
executable_semantics/testdata/if_else/if_else_if_else.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   if (0 == 1) {
     return 1;
   } else if (0 == 2) {

+ 1 - 1
executable_semantics/testdata/if_else/if_false.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   if (0 == 1) {
     return 1;
   }

+ 1 - 1
executable_semantics/testdata/if_else/if_nesting.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   if (0 == 0) {
     if (0 == 1) {
       return 1;

+ 1 - 1
executable_semantics/testdata/if_else/if_true.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   if (1 == 1) {
     return 0;
   }

+ 1 - 1
executable_semantics/testdata/import/fail_nonexistent_library.carbon

@@ -15,6 +15,6 @@ package ExecutableSemanticsTest api;
 
 import Nonexistent;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/import/fail_nonexistent_package.carbon

@@ -15,6 +15,6 @@ package ExecutableSemanticsTest api;
 
 import ExecutableSemanticsTest library "Nonexistent";
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/import/fail_order.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }
 

+ 1 - 1
executable_semantics/testdata/match/any_int.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var t: auto = 5;
   match (t) {
     case x: i32 =>

+ 1 - 1
executable_semantics/testdata/match/int.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var t: auto = 5;
   match (t) {
     case 5 =>

+ 1 - 1
executable_semantics/testdata/match/int_default.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var t: auto = 5;
   match (t) {
     case 3 =>

+ 1 - 1
executable_semantics/testdata/match/no_match.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var x: i32 = 0;
   match (x) {
     case 1 =>

+ 1 - 1
executable_semantics/testdata/match/placeholder.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   var t: auto = (1, 2, 3, 4);
   match (t) {
     case (_: i32, _: auto, x: i32, y: auto) =>

+ 1 - 1
executable_semantics/testdata/package/fail_missing.carbon

@@ -9,6 +9,6 @@
 // AUTOUPDATE: executable_semantics %s
 // CHECK: COMPILATION ERROR: {{.*}}/executable_semantics/testdata/package/fail_missing.carbon:12: syntax error, unexpected FN, expecting PACKAGE
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/package/with_library.carbon

@@ -11,6 +11,6 @@
 
 package ExecutableSemanticsTest library "Foo" api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/return/explicit_empty.carbon

@@ -15,7 +15,7 @@ fn F() -> () {
   return ();
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   F();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/return/fail_explicit_with_no_return.carbon

@@ -14,7 +14,7 @@ package ExecutableSemanticsTest api;
 fn F() -> () {
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   F();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/return/fail_explicit_with_plain_return.carbon

@@ -15,7 +15,7 @@ fn F() -> () {
   return;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   F();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/return/fail_implicit_with_explicit_return.carbon

@@ -15,7 +15,7 @@ fn F() {
   return ();
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   F();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/return/implicit_with_no_return.carbon

@@ -14,7 +14,7 @@ package ExecutableSemanticsTest api;
 fn F() {
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   F();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/return/implicit_with_plain_return.carbon

@@ -15,7 +15,7 @@ fn F() {
   return;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   F();
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/string/basic.carbon

@@ -18,6 +18,6 @@ fn CompareStr(s: String) -> i32 {
   return 1;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return CompareStr("str");
 }

+ 1 - 1
executable_semantics/testdata/string/fail_hex_lower.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   Print("str\xaa");
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/string/fail_hex_truncated.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   Print("str\x");
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/string/fail_invalid_escape.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   Print("str\e");
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/string/fail_newline.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   Print("new
 line");
   return 0;

+ 1 - 1
executable_semantics/testdata/string/fail_octal.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   Print("str\01");
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/string/fail_tab.carbon

@@ -11,7 +11,7 @@
 
 package ExecutableSemanticsTest api;
 
-fn main() -> i32 {
+fn Main() -> i32 {
   Print("new	line");
   return 0;
 }

+ 1 - 1
executable_semantics/testdata/string/hex.carbon

@@ -18,6 +18,6 @@ fn CompareStr(s: String) -> i32 {
   return 1;
 }
 
-fn main() -> i32 {
+fn Main() -> i32 {
   return CompareStr("\x73\x74\x72\x3B");
 }

部分文件因文件數量過多而無法顯示