Im not sure how to describe it but the macro is not properly resolving it 'parameters'.
Example:
Code: Select all
EnableExplicit
Structure INFO_STRUCT
Title.s{256}
EndStructure
Structure TASK_STRUCT
Info.INFO_STRUCT
EndStructure
Global *Task.TASK_STRUCT
Global *Info.INFO_STRUCT
Macro CopyTask(task,info);-> macro confuses *Task\Info & "info" so *Task\Info becomes *Task\*Info which is wrong!
CopyStructure(task\Info,info,INFO_STRUCT);-> rename "info" -> "infoX" and all works as expected!
EndMacro
*Task = AllocateStructure(TASK_STRUCT)
If *Task
*Task\Info\Title = "Test!"
*Info = AllocateStructure(INFO_STRUCT)
If *Info
CopyTask(*Task,*Info)
FreeStructure(*Info)
EndIf
FreeStructure(*Task)
EndIf
End