dynamic

autoXREFCurr&
To obtain the next index for a dynamic array:

begin globals
dynamic myDynArray(1000) as long
end globals
myDynArray(567) = 1
#if def _FBTOC
nextIndex = fn DynamicNextElement( dynamic( myDynArray ) ) // FBtoC syntax
#else
dim as pointer address
address = @myDynArray               // FB...
nextIndex = address.autoXREFCurr&   // ...syntax
#endif
// nextIndex is 568

def DynamicRemoveItems
The syntax for FBtoC is different from FB.

// Delete item 1 in dynamic array
#if ndef _FBtoC
def DynamicRemoveItems( gMyDynArray, 1, 1, 0 )            // FB syntax
#else
def DynamicRemoveItems( dynamic( gMyDynArray ), 1, 1, 0 ) // FBtoC syntax
#endif

compress dynamic
compress dynamic does nothing in OS X and is ignored by FBtoC.