forum-msg-id-125729-edit

Original date:2014-12-16 11:02:40 Edited by: ChrisB Subject: Curious machine.e error

Hi

Upgraded to Eu4.1 on the Windows virtual computer at work, from 4.05, in order to run Redy.

Ran euwingui, and came up with this error

c:\Euphoria\include\std\machine.e:1545 
<0074>:: Errors resolving the following references: 
	c:\Euphoria\include\std\machine.e (1545): local_free_protected_memory 
 
		local_free_protected_memory( iaddr, size + memory:BORDER_SPACE * 2 ) 
		                           ^ 
 
Warning ( not_reached ): 
	<0218>:: designer.exw:1836 - statement after return will never be executed 
 
--- Defined Words --- 
EU4 
EU4_0 
EU4_0_0 
WINDOWS 
WIN32 
WIN32_GUI 
EUI 
------------------- 
 

Now local_free_protected_memory() was below allocate_protect(), where this procedure was being called from

If I moved the procedure local_free_protected_memory() above allocate_protect(), the error goes away.

In other words forward referencing isn't working for this procedure from within the function allocate_protect.

Interestingly, local_free_protected_memory(), is within this

	if local_change_protection_on_protected_memory( iaddr, size + memory:BORDER_SPACE * 2, true_protection ) = -1 then 
		local_free_protected_memory( iaddr, size + memory:BORDER_SPACE * 2 ) 
		eaddr = 0 
	end if 

and local_change_protection_on_protected_memory() is a function which is also below allocate_protect() - in other words forward referencing is working for this functio, as I have not moved this function.

Chris

Not Categorized, Please Help

Search



Quick Links

User menu

Not signed in.

Misc Menu