According to Bendersky:
I've written a small unit to work with 3D vectors. It compiles without errors, but when I'm trying to use the operators I defined from a program I get the "invalid operands to binary" error.
Which version of GPC are you using? Mine (gpc-980410) does what it should with your unit (at least for my tiny test program). If you have something older than April 1998, I recommend to upgrade. See:
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/alpha/
Greetings
Peter