Hi, I'm trying to use signals with GPC 2.0 under Linux (binary release...). But I have problems in assigning a function address to a pointer. I'm basing my signal routine in the 'Function pointers' example, described in the HTML documentation of GPC, but it doesn't seem to work. Here goes the example and the compilation error: &>----------------------------------------------------------------------------< program zap(output); type proc_ptr = ^ procedure (integer); var pvar : proc_ptr; procedure write_int(i: integer); begin writeln ('Integer: ',i:1); end; begin (* PVAR points to function WRITE_IT *) pvar := & write_int; (* Dereferencing a function pointer calls the function *) pvar^(12345); end.
----------------------------------------------------------------------------< And GPC output is: example.pas: In function `program_Zap': example.pas:16: too few arguments to function `Write_int' example.pas:16: invalid lvalue in unary `&' ----------------------------------------------------------------------------<
It seems that GPC is not understanding that ' & Write_int' as it should. So , what am I doing wrong ? thanks for any help, Patricio.
participants (1)
-
Patricio Domingues