The first: you can't, unless you use an external macroprocessor. This was sometimes done before FPC had generics to generate type container classes automatically.
You can replace it by HIGH(A)-LOW(A)+1 but you can't turn it into a method or procedure. It might also be less universal. In many cases (but not all?) length() will also work.
The other three, should be doable with an inline function or a bunch of inline functions. The second is a reference (pointer type) parameter, the third string (since the second passes a string to SGL_Error, though it could be overloaded). The fourth performs a concatenation, also hard to do, but can be replaced with + at the cost of some runtime overhead.
Note that macro translation is not an automated process, the place of usage also contributes to the meaning of the macro. That's why translations of just the definition is guesswork.