Oh, cool! The change looks good to me. It’s a bit of a hack but less so than -enable-source-import. There are annoying differences in behavior between -enable-source-import and the real module loader, and this is made worse by the fact that so many tests use -enable-source-import so we’re effectively testing a debug-only code path. I’d like to just rip it out one day.
Slava > On Sep 9, 2016, at 5:18 PM, Jordan Rose <jordan_r...@apple.com> wrote: > > Dmitri tracked it down and has a fix for it, and then I had a complaint about > his fix, and then I didn't get back to it. :-) > > https://github.com/apple/swift/pull/4622 > <https://github.com/apple/swift/pull/4622> > > Jordan > > >> On Sep 9, 2016, at 14:50, Slava Pestov via swift-dev <swift-dev@swift.org >> <mailto:swift-dev@swift.org>> wrote: >> >> Running it in a loop on another machine doesn’t trigger it, so I’m thinking >> it might be a random variation in how the standard library is built? >> >>> On Sep 9, 2016, at 2:49 PM, Mark Lacey <mark.la...@apple.com >>> <mailto:mark.la...@apple.com>> wrote: >>> >>> >>>> On Sep 9, 2016, at 2:45 PM, Slava Pestov via swift-dev >>>> <swift-dev@swift.org <mailto:swift-dev@swift.org>> wrote: >>>> >>>> Hi all, >>>> >>>> Is anyone else seeing this? I haven’t seen it in CI, but for me this test >>>> fails at random, very rarely too — looks like something is >>>> non-deterministic in the optimizer? >>> >>> Yes, I hit this a couple days ago and attempted to reproduce and couldn’t. >>> >>> Mark >>> >>>> >>>> /Users/slava/new/swift/test/SILGen/objc_nonnull_lie_hack.swift:30:9: >>>> error: expected string not found in input >>>> // OPT: [[METHOD:%[0-9]+]] = class_method [volatile] [[METATYPE]] : >>>> $@thick Gizmo.Type, #Gizmo.nonNilGizmo!1.foreign : (Gizmo.Type) -> () -> >>>> Gizmo , $@convention(objc_method) (@objc_metatype Gizmo.Type) -> >>>> @autoreleased Gizmo >>>> ^ >>>> <stdin>:329:34: note: scanning from here >>>> %0 = metatype $@thick Gizmo.Type, loc >>>> "SOURCE_DIR/test/SILGen/objc_nonnull_lie_hack.swift":36:21, scope 54 // >>>> user: %1 >>>> ^ >>>> <stdin>:329:34: note: with variable "METATYPE" equal to "%0" >>>> %0 = metatype $@thick Gizmo.Type, loc >>>> "SOURCE_DIR/test/SILGen/objc_nonnull_lie_hack.swift":36:21, scope 54 // >>>> user: %1 >>>> ^ >>>> <stdin>:330:2: note: possible intended match here >>>> %1 = class_method [volatile] %0 : $@thick Gizmo.Type, >>>> #Gizmo.nonNilGizmo!1.foreign : (Gizmo.Type) -> () -> Gizmo! , >>>> $@convention(objc_method) (@objc_metatype Gizmo.Type) -> @autoreleased >>>> Optional<Gizmo>, loc >>>> "SOURCE_DIR/test/SILGen/objc_nonnull_lie_hack.swift":36:27, scope 54 // >>>> user: %3 >>>> ^ >>>> /Users/slava/new/swift/test/SILGen/objc_nonnull_lie_hack.swift:44:9: >>>> error: expected string not found in input >>>> // OPT: [[METHOD:%[0-9]+]] = class_method [volatile] [[OBJ:%[0-9]+]] : >>>> $Gizmo, #Gizmo.nonNilGizmo!1.foreign : (Gizmo) -> () -> Gizmo , >>>> $@convention(objc_method) (Gizmo) -> @autoreleased Gizmo >>>> ^ >>>> <stdin>:1625:67: note: scanning from here >>>> sil hidden >>>> @_TTSf4g___TF21objc_nonnull_lie_hack18callInstanceMethodFT5gizmoCSo5Gizmo_GSqS0__ >>>> : $@convention(thin) (@guaranteed Gizmo) -> @owned Optional<Gizmo> { >>>> ^ >>>> /Users/slava/new/swift/test/SILGen/objc_nonnull_lie_hack.swift:58:9: >>>> error: expected string not found in input >>>> // OPT: [[GETTER:%[0-9]+]] = class_method [volatile] [[OBJ:%[0-9]+]] : >>>> $Gizmo, #Gizmo.nonNilGizmoProperty!getter.1.foreign : (Gizmo) -> () -> >>>> Gizmo , $@convention(objc_method) (Gizmo) -> @autoreleased Gizmo >>>> ^ >>>> <stdin>:1842:88: note: scanning from here >>>> sil hidden >>>> @_TTSf4g___TF21objc_nonnull_lie_hack12loadPropertyFT5gizmoCSo5Gizmo_GSqS0__ >>>> : $@convention(thin) (@guaranteed Gizmo) -> @owned Optional<Gizmo> { >>>> >>>> ^ >>>> /Users/slava/new/swift/test/SILGen/objc_nonnull_lie_hack.swift:71:9: >>>> error: expected string not found in input >>>> // OPT: [[GETTER:%[0-9]+]] = class_method [volatile] [[OBJ:%[0-9]+]] : >>>> $Gizmo, #Gizmo.unownedNonNilGizmoProperty!getter.1.foreign : (Gizmo) -> () >>>> -> Gizmo , $@convention(objc_method) (Gizmo) -> @autoreleased Gizmo >>>> ^ >>>> <stdin>:2059:95: note: scanning from here >>>> sil hidden >>>> @_TTSf4g___TF21objc_nonnull_lie_hack19loadUnownedPropertyFT5gizmoCSo5Gizmo_GSqS0__ >>>> : $@convention(thin) (@guaranteed Gizmo) -> @owned Optional<Gizmo> { >>>> >>>> ^ >>>> >>>> _______________________________________________ >>>> swift-dev mailing list >>>> swift-dev@swift.org <mailto:swift-dev@swift.org> >>>> https://lists.swift.org/mailman/listinfo/swift-dev >>>> <https://lists.swift.org/mailman/listinfo/swift-dev> >>> >> >> _______________________________________________ >> swift-dev mailing list >> swift-dev@swift.org <mailto:swift-dev@swift.org> >> https://lists.swift.org/mailman/listinfo/swift-dev >
_______________________________________________ swift-dev mailing list swift-dev@swift.org https://lists.swift.org/mailman/listinfo/swift-dev