changes: Check that object name is not already a global/class function Add alternate access syntax @Name check that the name is not an internal function MG: 7/2/99 No mangling here for object access method, because no parameters. If we decide to mangle on return type (not likely) we can change this and use MARG.
#IFDEF UI.EXISTS
#ELSE
USE UI
#ENDIF
// check for following errors
// 1. name defined as internal function
// 2. name defined as overloaded function
// 3. name defined as global function
// 4. name defined as non-overloaded class function
#IF ( (!Zl & 1)=0)
#IFSAME FN$!1 __F__
#ERROR DFERR_COMP_ILLEGAL_OBJECT_DEFINTION !1 is an internal function name
#ENDIF
#ENDIF
// check if name is already used for overloaded function, if so, error
#IFDEF GET_!1_OVERLOADED
#ERROR DFERR_COMP_ILLEGAL_OBJECT_DEFINTION !1 Already defined as a overloaded function
#ELSE
// Check that object name is not already a global or class function.
#IFDEF GET_!1
#IF (GET_!1<$40000001)
#IF (GET_!1<0)
#ERROR DFERR_COMP_ILLEGAL_OBJECT_DEFINTION !1 Already defined as a global function
#ELSE
#ERROR DFERR_COMP_ILLEGAL_OBJECT_DEFINTION !1 Already defined as a function/Property
#ENDIF
#ENDIF
#ELSE
#REPLACE GET_!1 |CI!ZH
#FREG GET_!1 RETURNS INTEGER
// register additional object access methods
// #REPLACE @!1 (!1(current_object))
#ENDIF // if Get_ defined
#ENDIF // if Get_ overloaded