@backslider: Unfortunately our suggestion causes an "temp.gbas"(

error : command not inside function or sub" error. This could be removed simple by moving the test routine to a function but I think "extern" is the way to go.
@hardyx: "extern" works great but removing the "//" here:
LOCAL l%
INLINE
extern int xfoo;
//l%=xfoo;
DEBUG((DGStr)xfoo);
ENDINLINE
Causes an "*** Unhandled exception *** EXCEPTION_INT_DIVIDE_BY_ZERO" runtime error. I think this is due to a C to GLBasic type conversion?
It's not really a big deal, as the global C var will only be used within various in-lined C sections scattered between various project files but I would still like to know why it's causing a divide by zero though?
@MrTAToad: Thanks for the suggestion but my project is very segmented into various files, segmented by required function and usually typed. The C code has to be inlined due to the way the code works but communication between C and GLBasic while trying to avoid complex type conversions was causing me no end of bother. There is a lot of C spread across this project, this is unavoidable but I am glad GLBasic has this C integration functionality, what a god-send it has already proven to be!
Thanks to all that helped me here!
