The GEOS codebase has several typedefs called GeometryPtr and GeomPtr.
They are aliases for a mixture of Geometry * and std::unique_Ptr<Geometry>.
I'm thinking it's a good thing to purge them from the codebase in favour of
explicit type signatures, because:

- it's highly confusing that they can be aliases for different things
- it's complicated that they are defined in multiple places
- it can be hard to see what they represent
- they don't save much typing in the case of Geometry*, and using auto can
simplify other uses

This was discussed a while back.  The general feeling was that it's better
to use explicit types.  Is this still the consensus?

Some notes on the process:
- I expect this will be done in multiple passes, to fit work schedules.
Will start with the least intrusive changes
- when this is done, it needs to be backported so that subsequent backports
don't collide with unchanged code.
- If older versions use the aliases in dead code, it may not be removed,
just patched to ensure it still compiles (i.e. by leaving the typedefs in
place)

Reply via email to