[SILGenThunk.cpp:129](emitDistributedThunkForDecl) VAR THUNK IS: (accessor_decl implicit interface type=" (Worker) -> () async throws -> String" access=internal final captures=( ) nonisolated distributed_thunk _distributed_get for="distributedVariable" (parameter "self" interface type="Worker" known_to_be_local) (parameter_list) (brace_stmt implicit (if_stmt implicit (conditions=array (call_expr implicit type="Bool" nothrow isolation_crossing="none" (declref_expr implicit type="(AnyObject) -> Bool" decl="Distributed.(file).__isRemoteActor" function_ref=single) (argument_list implicit (argument (erasure_expr implicit type="AnyObject" (declref_expr implicit type="Worker" decl="main.(file).Worker..self known-to-be-local" function_ref=unapplied)))))) (brace_stmt implicit (pattern_binding_decl implicit (pattern_named implicit type="ActorSystem" "system") (original_init=unresolved_dot_expr implicit type="" field="actorSystem" function_ref=unapplied (declref_expr implicit type="Worker" decl="main.(file).Worker..self known-to-be-local" function_ref=unapplied)) (processed_init=member_ref_expr implicit type="ActorSystem" decl="main.(file).Worker.actorSystem [with (substitution_map generic_signature= ActorSystem -> ActorSystem)]" (declref_expr implicit type="Worker" decl="main.(file).Worker..self known-to-be-local" function_ref=unapplied))) (var_decl implicit "system" interface type="ActorSystem" access=private let readImpl=stored immutable) (pattern_binding_decl implicit (pattern_named implicit type="ActorSystem.InvocationEncoder" "invocation") (original_init=call_expr implicit type="ActorSystem.InvocationEncoder" nothrow isolation_crossing="none" (dot_syntax_call_expr implicit type="() -> ActorSystem.InvocationEncoder" nothrow isolation_crossing="none" (declref_expr implicit type="(ActorSystem) -> () -> ActorSystem.InvocationEncoder" decl="Distributed.(file).DistributedActorSystem.makeInvocationEncoder() [with (substitution_map generic_signature= Self -> ActorSystem)]" function_ref=single) (argument_list implicit (argument (declref_expr implicit type="ActorSystem" decl="main.(file).Worker..system" function_ref=unapplied)))) (argument_list implicit)) (processed_init=call_expr implicit type="ActorSystem.InvocationEncoder" nothrow isolation_crossing="none" (dot_syntax_call_expr implicit type="() -> ActorSystem.InvocationEncoder" nothrow isolation_crossing="none" (declref_expr implicit type="(ActorSystem) -> () -> ActorSystem.InvocationEncoder" decl="Distributed.(file).DistributedActorSystem.makeInvocationEncoder() [with (substitution_map generic_signature= Self -> ActorSystem)]" function_ref=single) (argument_list implicit (argument (declref_expr implicit type="ActorSystem" decl="main.(file).Worker..system" function_ref=unapplied)))) (argument_list implicit))) (var_decl implicit "invocation" interface type="ActorSystem.InvocationEncoder" access=private readImpl=stored writeImpl=stored readWriteImpl=stored) (try_expr implicit type="()" (call_expr implicit type="()" throws isolation_crossing="none" (dot_syntax_call_expr implicit type="(ActorSystem.Type) throws -> ()" nothrow isolation_crossing="none" (declref_expr implicit type="(inout ActorSystem.InvocationEncoder) -> (ActorSystem.Type) throws -> ()" decl="Distributed.(file).DistributedTargetInvocationEncoder.recordGenericSubstitution [with (substitution_map generic_signature= Self -> ActorSystem.InvocationEncoder T -> ActorSystem)]" function_ref=single) (argument_list implicit (argument inout (inout_expr implicit type="inout ActorSystem.InvocationEncoder" (declref_expr implicit type="@lvalue ActorSystem.InvocationEncoder" decl="main.(file).Worker..invocation" function_ref=unapplied))))) (argument_list implicit (argument (dot_self_expr type="ActorSystem.Type" (type_expr implicit type="ActorSystem.Type" null_typerepr)))))) (try_expr implicit type="()" (call_expr implicit type="()" throws isolation_crossing="none" (dot_syntax_call_expr implicit type="(String.Type) throws -> ()" nothrow isolation_crossing="none" (declref_expr implicit type="(inout ActorSystem.InvocationEncoder) -> (String.Type) throws -> ()" decl="Distributed.(file).DistributedTargetInvocationEncoder.recordReturnType [with (substitution_map generic_signature= Self -> ActorSystem.InvocationEncoder R -> String)]" function_ref=single) (argument_list implicit (argument inout (inout_expr implicit type="inout ActorSystem.InvocationEncoder" (declref_expr implicit type="@lvalue ActorSystem.InvocationEncoder" decl="main.(file).Worker..invocation" function_ref=unapplied))))) (argument_list implicit (argument (dot_self_expr type="String.Type" (type_expr implicit type="String.Type" null_typerepr)))))) (try_expr implicit type="()" (call_expr implicit type="()" throws isolation_crossing="none" (dot_syntax_call_expr implicit type="() throws -> ()" nothrow isolation_crossing="none" (declref_expr implicit type="(inout ActorSystem.InvocationEncoder) -> () throws -> ()" decl="Distributed.(file).DistributedTargetInvocationEncoder.doneRecording() [with (substitution_map generic_signature= Self -> ActorSystem.InvocationEncoder)]" function_ref=single) (argument_list implicit (argument inout (inout_expr implicit type="inout ActorSystem.InvocationEncoder" (declref_expr implicit type="@lvalue ActorSystem.InvocationEncoder" decl="main.(file).Worker..invocation" function_ref=unapplied))))) (argument_list implicit))) (pattern_binding_decl implicit (pattern_named implicit type="RemoteCallTarget" "target") (original_init=call_expr implicit type="RemoteCallTarget" nothrow isolation_crossing="none" (constructor_ref_call_expr implicit type="(String) -> RemoteCallTarget" nothrow isolation_crossing="none" (declref_expr implicit type="(RemoteCallTarget.Type) -> (String) -> RemoteCallTarget" decl="Distributed.(file).RemoteCallTarget.init(_:)" function_ref=single) (argument_list implicit (argument (type_expr implicit type="RemoteCallTarget.Type" typerepr="RemoteCallTarget")))) (argument_list implicit (argument (string_literal_expr implicit type="String" encoding=utf8 value="$s4main6WorkerC19distributedVariableSSyYaKFTE" builtin_initializer="Swift.(file).String extension.init(_builtinStringLiteral:utf8CodeUnitCount:isASCII:)" initializer="**NULL**")))) (processed_init=call_expr implicit type="RemoteCallTarget" nothrow isolation_crossing="none" (constructor_ref_call_expr implicit type="(String) -> RemoteCallTarget" nothrow isolation_crossing="none" (declref_expr implicit type="(RemoteCallTarget.Type) -> (String) -> RemoteCallTarget" decl="Distributed.(file).RemoteCallTarget.init(_:)" function_ref=single) (argument_list implicit (argument (type_expr implicit type="RemoteCallTarget.Type" typerepr="RemoteCallTarget")))) (argument_list implicit (argument (string_literal_expr implicit type="String" encoding=utf8 value="$s4main6WorkerC19distributedVariableSSyYaKFTE" builtin_initializer="Swift.(file).String extension.init(_builtinStringLiteral:utf8CodeUnitCount:isASCII:)" initializer="**NULL**"))))) (var_decl implicit "target" interface type="RemoteCallTarget" access=private let readImpl=stored immutable) (return_stmt implicit (try_expr implicit type="String" (await_expr implicit type="String" (call_expr implicit type="String" throws isolation_crossing="none" (dot_syntax_call_expr implicit type="(Worker, RemoteCallTarget, inout ActorSystem.InvocationEncoder, Never.Type, String.Type) async throws -> String" nothrow isolation_crossing="none" (declref_expr implicit type="(ActorSystem) -> (Worker, RemoteCallTarget, inout ActorSystem.InvocationEncoder, Never.Type, String.Type) async throws -> String" decl="Distributed.(file).DistributedActorSystem.remoteCall(on:target:invocation:throwing:returning:) [with (substitution_map generic_signature= Self -> ActorSystem Act -> Worker Err -> Never Res -> String)]" function_ref=single) (argument_list implicit (argument (declref_expr implicit type="ActorSystem" decl="main.(file).Worker..system" function_ref=unapplied)))) (argument_list implicit labels="on:target:invocation:throwing:returning:" (argument label="on" (declref_expr implicit type="Worker" decl="main.(file).Worker..self known-to-be-local" function_ref=unapplied)) (argument label="target" (declref_expr implicit type="RemoteCallTarget" decl="main.(file).Worker..target" function_ref=unapplied)) (argument label="invocation" inout (inout_expr implicit type="inout ActorSystem.InvocationEncoder" (declref_expr implicit type="@lvalue ActorSystem.InvocationEncoder" decl="main.(file).Worker..invocation" function_ref=unapplied))) (argument label="throwing" (dot_self_expr type="Never.Type" (type_expr implicit type="Never.Type" typerepr="Never"))) (argument label="returning" (dot_self_expr type="String.Type" (type_expr implicit type="String.Type" null_typerepr))))))))) (brace_stmt implicit (return_stmt implicit (await_expr implicit type="String" (member_ref_expr implicit type="String" decl="main.(file).Worker.distributedVariable@/Users/ktoso/code/swift-project/swift/test/Distributed/Runtime/distributed_actor_localSystem_distributed_property.swift:18:19 [with (substitution_map generic_signature= ActorSystem -> ActorSystem)]" (declref_expr implicit type="Worker" decl="main.(file).Worker..self known-to-be-local" function_ref=unapplied)))))))) Assertion failed: (ThrowDest.isValid() && "calling emitThrow with invalid throw destination!"), function emitThrow, file SILGenStmt.cpp, line 1536.