Lasso Soft Inc. > Home

RhinoTrac

LassoSoft Ticket Tracking System

NOTE: If you are using Lasso Server 9.3 please Log your ticket directly via the LUX admin as this will give us more information about your issue.

Lasso 9 Issues



Ticket #8024: Can't call member method from within split_thread

Reported by:
Eric Knibbe
Date:
12 Jan, 2017
Priority:
minor
Component:
Lasso 9
Version:
9.3
Keywords:
Platform:
Code inside a split_thread within a type cannot call other member functions of that type.
define athing => type {
private callprivate => "called me!"
public callpublic => .callprivate
public callthread => {
split_thread => {
return .callprivate
}
}
}

local(a = athing)
#a->callpublic // works
#a->callthread // does not work

If this is run on the command line with `lasso9`, it segfaults:
Thread 2 Crashed:
0 libsystem_pthread.dylib 0x00007fff8e1b5aa2 pthread_getspecific + 0
1 com.lassosoft.Lasso9 0x000000010bd0f2eb llvm::PrettyStackTraceEntry::PrettyStackTraceEntry() + 43
2 com.lassosoft.Lasso9 0x000000010b8303e0 llvm::PMDataManager::freePass(llvm::Pass*, llvm::StringRef, llvm::PassDebuggingString) + 64
3 com.lassosoft.Lasso9 0x000000010b830a2c llvm::PMDataManager::removeDeadPasses(llvm::Pass*, llvm::StringRef, llvm::PassDebuggingString) + 172
4 com.lassosoft.Lasso9 0x000000010b8313cd llvm::FPPassManager::runOnFunction(llvm::Function&) + 301
5 com.lassosoft.Lasso9 0x000000010b8316e3 llvm::FunctionPassManagerImpl::run(llvm::Function&) + 115
6 com.lassosoft.Lasso9 0x000000010b831998 llvm::FunctionPassManager::run(llvm::Function&) + 104
7 com.lassosoft.Lasso9 0x000000010af3223d lasso9_emitter::completeFunction(llvm::Function*, int) + 493 (lasso9_emitter.cpp:543)
8 com.lassosoft.Lasso9 0x000000010afd6b0c lasso9_runtime::generateDispatchFunction(tag*) + 4636 (lasso9_runtime.cpp:2322)
9 com.lassosoft.Lasso9 0x000000010af9b46f prim_lazy_unbound_dispatch_builder + 79 (lasso9_llvmbootstrap.cpp:3994)
10 com.lassosoft.Lasso9 0x000000010aee9b7b _inner_worker_thread(bool) + 139 (lasso9_bootstrap.threads.cpp:335)
11 com.lassosoft.Lasso9 0x000000010aee9545 _worker_thread(void*) + 21 (lasso9_bootstrap.threads.cpp:341)
12 com.lassosoft.Lasso9 0x000000010b17c42a GC_inner_start_routine + 90 (pthread_start.c:56)
13 com.lassosoft.Lasso9 0x000000010b1798fb GC_call_with_stack_base + 27 (misc.c:1553)
14 libsystem_pthread.dylib 0x00007fff8e1b799d _pthread_body + 131
15 libsystem_pthread.dylib 0x00007fff8e1b791a _pthread_start + 168
16 libsystem_pthread.dylib 0x00007fff8e1b5351 thread_start + 13
Please log in to your LassoSoft account to comment

LassoSoft Inc. > Home

 

 

©LassoSoft Inc 2015 | Web Development by Treefrog Inc | PrivacyLegal terms and Shipping | Contact LassoSoft