Well, you appear to use Controls.ModalResultStr (which is a property resolving to GetModalResultStr )
And it tells you to use UITypes.ModalResultStr
Hi!
Nope. No controls in the uses section but UItypes.
Wrong shot in the dark.
Well the content for deprecated messages is defined in the source (in this case LCL, where the deprecated identifier is).
So fpc only prints something that is in some source code that declares ModalResultStr.
I could only find those 2 locations, but I looked a trunk (Lazarus), so maybe if you have a diff version, you need to find where the deprecated keyword for ModalResultStr is.
As for ModalResultStr vs GetModalResultStr:
If ModalResultStr is a property with a getter, then using ModalResultStr will show deprecation messages for its getter too. So that explains how ModalResultStr displays "GetModalResultStr is deprecated".