@@ -394,23 +394,16 @@ fn F() {
394
394
395
395
union U ;
396
396
397
- auto foo () - > U* ;
397
+ auto foo () - > U* _Nonnull ;
398
398
399
- // --- fail_todo_import_decl_pointer_return_type .carbon
399
+ // --- import_decl_pointer_return_type .carbon
400
400
401
401
library "[[@TEST_NAME]]" ;
402
402
403
403
import Cpp library "decl_pointer_return_type.h" ;
404
404
405
405
fn F () {
406
406
// @dump-sem-ir-begin
407
- // CHECK:STDERR: fail_todo_import_decl_pointer_return_type.carbon:[[@LINE+7]]:3: error: semantics TODO: `Unsupported: nullable pointer: U *` [SemanticsTodo]
408
- // CHECK:STDERR: Cpp.foo();
409
- // CHECK:STDERR: ^~~~~~~
410
- // CHECK:STDERR: fail_todo_import_decl_pointer_return_type.carbon:[[@LINE+4]]:3: note: in `Cpp` name lookup for `foo` [InCppNameLookup]
411
- // CHECK:STDERR: Cpp.foo();
412
- // CHECK:STDERR: ^~~~~~~
413
- // CHECK:STDERR:
414
407
Cpp.foo ();
415
408
// @dump-sem-ir-end
416
409
}
@@ -974,9 +967,11 @@ fn F() {
974
967
// CHECK:STDOUT: <elided>
975
968
// CHECK:STDOUT: }
976
969
// CHECK:STDOUT:
977
- // CHECK:STDOUT: --- fail_todo_import_decl_pointer_return_type .carbon
970
+ // CHECK:STDOUT: --- import_decl_pointer_return_type .carbon
978
971
// CHECK:STDOUT:
979
972
// CHECK:STDOUT: constants {
973
+ // CHECK:STDOUT: %U: type = class_type @U [concrete]
974
+ // CHECK:STDOUT: %ptr: type = ptr_type %U [concrete]
980
975
// CHECK:STDOUT: %foo.type: type = fn_type @foo [concrete]
981
976
// CHECK:STDOUT: %foo: %foo.type = struct_value () [concrete]
982
977
// CHECK:STDOUT: }
@@ -997,7 +992,7 @@ fn F() {
997
992
// CHECK:STDOUT: !entry:
998
993
// CHECK:STDOUT: %Cpp.ref: <namespace> = name_ref Cpp, imports.%Cpp [concrete = imports.%Cpp]
999
994
// CHECK:STDOUT: %foo.ref: %foo.type = name_ref foo, imports.%foo.decl [concrete = constants.%foo]
1000
- // CHECK:STDOUT: %foo.call: init <error> = call %foo.ref()
995
+ // CHECK:STDOUT: %foo.call: init %ptr = call %foo.ref()
1001
996
// CHECK:STDOUT: <elided>
1002
997
// CHECK:STDOUT: }
1003
998
// CHECK:STDOUT:
0 commit comments