Error in using define for struct

Please use SystemVerilog tags around your code(I added them for you), and I assume line 8 was

`dps p3;

It would have helped if you pointed that out.

The reason for the syntax error is the extra semicolon at the end of your **define dps**. The becomes part of the text replaced by dps.