Description of problem: I'm learning to use openscad and was working on the code similar to that pasted below. I had done around 10 to 20 edit / run operations ( without saving ). It was working and fell over on compiling a trivial edit. The problem does not appear to be reproducible but it chrashed while comiling a modified programme on both occasions. Openscad has crashed twice in around 20 sessions. The other time was on different code which was not recursive. Not sure if its relevant but openscad only seems to use one core on a 6 core AMD chip. Nothing else crashes like this and I regularly use Firefox ( can run very slowly at times ) Thunderbird Open Office code similar to that run when it crashed // Lathe IXL leader // cross slide feed screw // measured 9/04/14 J Willis // drawing rounded up to the nearest 64th & converted to mm. $fa = 1; $fs = 0.1; IXL_Leader_cross_slide_lead_screw = [ [ 14.29, 82.55 ], // handle shaft [ 25.4, 6.35 ], // front thrust face [ 19.84, 30.48 ], // front bearing surface [ 11.91, 12.7 ], // drive gear shaft key not drawn [ 11.11, 1.27 ], // circlip groove [ 11.51, 24.13 ], // shaft [ 11.51, 203.2 ], // 7/16 x 1/10 RH acme thread [ 7.94, 25.4 ], // back bearing [ 6.35, 17.46 ] // rear thread ]; module add_round_shaft_segment( segment_list, current_segment, last_segment ){ // **************************************** //recursive function to stack cylinders described in a list along the z axis //parameters: the list as a matrix, current position, index of the last segment ( num segments -1 ) //each vector of the form [diameter, length] // ***************************************** echo( current_segment, last_segment, segment_list[current_segment]); translate([0 , 0, -1 * segment_list[current_segment][1]]){ cylinder( d = segment_list[current_segment][0], h = segment_list[current_segment][1] ); if( current_segment < last_segment ){ add_round_shaft_segment( segment_list, current_segment + 1, last_segment); } } } rotate( [0, -90, 0] ) assign( last_segment = len(IXL_Leader_cross_slide_lead_screw ) -1 ){ add_round_shaft_segment( IXL_Leader_cross_slide_lead_screw, 0, last_segment ); }; Version-Release number of selected component: openscad-2014.03-1.fc19 Additional info: reporter: libreport-2.2.1 backtrace_rating: 4 cmdline: openscad crash_function: Context::lookup_variable executable: /usr/bin/openscad kernel: 3.13.11-100.fc19.x86_64 runlevel: N 5 type: CCpp uid: 1000 Truncated backtrace: Thread no. 1 (10 frames) #0 Context::lookup_variable at src/context.cc:105 #3 Expression::evaluate at src/expr.cc:142 #6 EvalContext::getArgValue at src/evalcontext.cc:21 #7 ControlModule::instantiate at src/control.cc:267 #8 Context::instantiate_module at src/context.cc:134 #9 FileContext::instantiate_module at src/modcontext.cc:224 #10 Context::instantiate_module at src/context.cc:134 #12 ModuleInstantiation::evaluate at src/module.cc:142 #13 LocalScope::instantiateChildren at src/localscope.cc:67 #14 Module::instantiate at src/module.cc:196
Created attachment 894685 [details] File: backtrace
Created attachment 894686 [details] File: cgroup
Created attachment 894687 [details] File: core_backtrace
Created attachment 894688 [details] File: dso_list
Created attachment 894689 [details] File: environ
Created attachment 894690 [details] File: exploitable
Created attachment 894691 [details] File: limits
Created attachment 894692 [details] File: maps
Created attachment 894693 [details] File: open_fds
Created attachment 894694 [details] File: proc_pid_status
Created attachment 894695 [details] File: var_log_messages
What do you mean by run? Compile (F5) or Compile and Render (F6)?