mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
C++ Interop: Set location when creating param patterns (#6184)
Follow up of #5197. Part of #5064.
This commit is contained in:
@@ -347,22 +347,28 @@ import Cpp library "plus_with_int_conversion.h";
|
||||
|
||||
fn F() {
|
||||
let c1: Cpp.C = Cpp.C.C(4);
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+8]]:24: error: cannot implicitly convert expression of type `Core.IntLiteral` to `Cpp.C` [ConversionFailure]
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+11]]:24: error: cannot implicitly convert expression of type `Core.IntLiteral` to `Cpp.C` [ConversionFailure]
|
||||
// CHECK:STDERR: let c2: Cpp.C = c1 + 5;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+5]]:24: note: type `Core.IntLiteral` does not implement interface `Core.ImplicitAs(Cpp.C)` [MissingImplInMemberAccessNote]
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+8]]:24: note: type `Core.IntLiteral` does not implement interface `Core.ImplicitAs(Cpp.C)` [MissingImplInMemberAccessNote]
|
||||
// CHECK:STDERR: let c2: Cpp.C = c1 + 5;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon: note: initializing function parameter [InCallToFunctionParam]
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE-10]]:10: in file included here [InCppInclude]
|
||||
// CHECK:STDERR: ./plus_with_int_conversion.h:6:25: note: initializing function parameter [InCallToFunctionParam]
|
||||
// CHECK:STDERR: auto operator+(C lhs, C rhs) -> C;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
let c2: Cpp.C = c1 + 5;
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+8]]:19: error: cannot implicitly convert expression of type `Core.IntLiteral` to `Cpp.C` [ConversionFailure]
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+11]]:19: error: cannot implicitly convert expression of type `Core.IntLiteral` to `Cpp.C` [ConversionFailure]
|
||||
// CHECK:STDERR: let c3: Cpp.C = 6 + c1;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+5]]:19: note: type `Core.IntLiteral` does not implement interface `Core.ImplicitAs(Cpp.C)` [MissingImplInMemberAccessNote]
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE+8]]:19: note: type `Core.IntLiteral` does not implement interface `Core.ImplicitAs(Cpp.C)` [MissingImplInMemberAccessNote]
|
||||
// CHECK:STDERR: let c3: Cpp.C = 6 + c1;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon: note: initializing function parameter [InCallToFunctionParam]
|
||||
// CHECK:STDERR: fail_todo_plus_with_int_conversion.carbon:[[@LINE-22]]:10: in file included here [InCppInclude]
|
||||
// CHECK:STDERR: ./plus_with_int_conversion.h:6:18: note: initializing function parameter [InCallToFunctionParam]
|
||||
// CHECK:STDERR: auto operator+(C lhs, C rhs) -> C;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
let c3: Cpp.C = 6 + c1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user