         Edinburgh IMP77 Compiler - Version 8.4
    1 %externalroutine test     ;! Fails if in a routine but works OK in a begin/end block
		.Ltext0:
				.globl	next_free_bound_index
				.bss
				.align 4
		next_free_bound_index:
				.zero	4
				.comm	_lb,384,32
				.comm	_ub,384,32
				.globl	TEST
		TEST:
		.LFB189:
				pushl	%ebp
				movl	%esp, %ebp
				subl	$280, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
    2   %if 0 = 1 %then %start  ;! only fails if in an "if" condition. Doesn't matter if forward or reversed or a start/finish block!
				nop
    3     %signal 15,2
    4   %finish
    5 %end
				nop
		.L2:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L4
				call	__stack_chk_fail_local
		.L4:
				leave
				ret
		.LFE189:
				.section	.text.__x86.get_pc_thunk.ax,"axG",@progbits,__x86.get_pc_thunk.ax,comdat
				.globl	__x86.get_pc_thunk.ax
				.hidden	__x86.get_pc_thunk.ax
		__x86.get_pc_thunk.ax:
		.LFB190:
				movl	(%esp), %eax
				ret
		.LFE190:
		.Letext0:
    6
    7 %endoffile
    6 Statements compiled
