diff interp.c @ 13:23dd9c766699

C backend close to being useable
author mpavone@
date Tue, 26 May 2009 23:49:46 +0000
parents 76568becd6d6
children 20d40cb8abf3
line wrap: on
line diff
--- a/interp.c	Mon May 25 23:34:36 2009 -0400
+++ b/interp.c	Tue May 26 23:49:46 2009 +0000
@@ -998,10 +998,12 @@
 	VIS_InitializeCriticalSection(worker_queue_lock);
 	DEBUGPUTS("Initializing text_buf_lock\n");
 	VIS_InitializeCriticalSection(text_buf_lock);
+#ifdef GUI_LIB
 #ifdef SYLLABLE
 	DEBUGPUTS("vis_window_init\n");
 	vis_window_init();
 #endif
+#endif //GUI_LIB
 	VIS_CreateEvent(queue_add_event);//No security parameter, auto reset, starts signaled, no name
 	
 }
@@ -2132,6 +2134,7 @@
 	aworker->input_types[0] = BUILTIN_TYPE_PROGRAM;
 	aworker->input_types[1] = BUILTIN_TYPE_STRING;
 
+#ifdef GUI_LIB
 #ifdef SYLLABLE
 	create_company(prog, "Checkbox", 2, 0, FALSE);
 
@@ -2172,6 +2175,7 @@
 	aworker->input_types[0] = BUILTIN_TYPE_DROPDOWN;
 	aworker->input_types[1] = BUILTIN_TYPE_WHOLE;
 #endif
+#endif
 
 	/*if(current_def > num_defs)
 		num_defs = current_def;
@@ -3085,6 +3089,7 @@
 			{
 				if(worker_entry.instance) {
 					ERRORPRINTF("Error: Needed conversion from %s to %s for input %d of %s in worker %s\n", params[i]->company->name, process_def->program->companylist[process_def->input_types[i]].name, i, process_def->name, worker_entry.instance->def->name);
+					print_stack_trace(worker_entry.instance);
 				} else {
 					DEBUGPRINTF("Error: Needed conversion from %s to %s for input %d of %s\n", params[i]->company->name, process_def->program->companylist[process_def->input_types[i]].name, i, process_def->name);
 					printf("Error: Needed conversion from %s to %s for input %d of %s", params[i]->company->name, process_def->program->companylist[process_def->input_types[i]].name, i, process_def->name);