declare string:    "type("//"Foo"//""//")"//""//""
declare component: type(Foo)
declare result:    type(Foo)
declare dummy:     type(Foo)

a == b:            __T_EQ_SCALAR__(a,b)
a NE b:            __T_NE_SCALAR__(a,b)
a <= b:            __T_LE_SCALAR__(a,b)
a >= b:            __T_GE_SCALAR__(a,b)
a <  b:            __T_LT_SCALAR__(a,b)
a >  b:            __T_GT_SCALAR__(a,b)

FREE(x):           
COPY(dst,src):     dst=src
MOVE(dst,src):     dst=src
