mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Add signature enforcement for Main.Run and give it the symbol name main. (#3266)
For #2550.
This commit is contained in:
+14
-14
@@ -4,32 +4,32 @@
|
||||
//
|
||||
// AUTOUPDATE
|
||||
|
||||
fn Run(a: i32) {}
|
||||
fn G(a: i32) {}
|
||||
|
||||
fn Main() {
|
||||
// CHECK:STDERR: fail_param_type.carbon:[[@LINE+6]]:6: ERROR: Cannot implicitly convert from `f64` to `i32`.
|
||||
// CHECK:STDERR: Run(1.0);
|
||||
// CHECK:STDERR: ^
|
||||
fn F() {
|
||||
// CHECK:STDERR: fail_param_type.carbon:[[@LINE+6]]:4: ERROR: Cannot implicitly convert from `f64` to `i32`.
|
||||
// CHECK:STDERR: G(1.0);
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR: fail_param_type.carbon:[[@LINE-6]]:1: Initializing parameter 1 of function declared here.
|
||||
// CHECK:STDERR: fn Run(a: i32) {}
|
||||
// CHECK:STDERR: fn G(a: i32) {}
|
||||
// CHECK:STDERR: ^
|
||||
Run(1.0);
|
||||
G(1.0);
|
||||
}
|
||||
|
||||
// CHECK:STDOUT: file "fail_param_type.carbon" {
|
||||
// CHECK:STDOUT: %Run = fn_decl @Run
|
||||
// CHECK:STDOUT: %Main = fn_decl @Main
|
||||
// CHECK:STDOUT: %G = fn_decl @G
|
||||
// CHECK:STDOUT: %F = fn_decl @F
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @Run(%a: i32) {
|
||||
// CHECK:STDOUT: fn @G(%a: i32) {
|
||||
// CHECK:STDOUT: !entry:
|
||||
// CHECK:STDOUT: return
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @Main() {
|
||||
// CHECK:STDOUT: fn @F() {
|
||||
// CHECK:STDOUT: !entry:
|
||||
// CHECK:STDOUT: %Run.ref = name_reference_untyped "Run", package.%Run
|
||||
// CHECK:STDOUT: %.loc16_7: f64 = real_literal 10e-1
|
||||
// CHECK:STDOUT: %.loc16_6: type = tuple_type ()
|
||||
// CHECK:STDOUT: %G.ref = name_reference_untyped "G", package.%G
|
||||
// CHECK:STDOUT: %.loc16_5: f64 = real_literal 10e-1
|
||||
// CHECK:STDOUT: %.loc16_4: type = tuple_type ()
|
||||
// CHECK:STDOUT: return
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
Reference in New Issue
Block a user