Thank you very much, declaring the operator within the record does indeed solve the issue.
Just to be sure in case I might need it some day: Does this mean, if I need e.g. a comparison operator for a specialized TPair, I would declare a record class helper and define the operator there? ----- Original Message ----- From: Sven Barth via fpc-pascal <fpc-pascal@lists.freepascal.org> To: FPC-Pascal users discussions <fpc-pascal@lists.freepascal.org> Sent: Friday, June 24, 2022, 10:43:55 Subject: [fpc-pascal] Operator not overloaded Thomas Kurz via fpc-pascal <fpc-pascal@lists.freepascal.org> schrieb am Do., 23. Juni 2022, 19:45: > When compiling, I get this error: > pathfinding.pas(17,17) Error: Operator is not overloaded: "TTileSegment" = > "TTileSegment" > Which I don't understand -- because the "=" operator is defined in > tesstypes.pas. > Am I doing something wrong or is this behavior a bug? Global operator overloads need to be available at the time the generic is *declared*, not *specialized*. That is one of the reasons why advanced records were introduced. So you need to declare your operators as part of your record. Regards, Sven _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal