[gs-devel] Removing the private keyword

Ralph Giles ralph.giles at artifex.com
Mon Sep 24 08:10:11 PDT 2007


All,

We recently agreed to replace the 'private' define in Ghostscript with 
the now standard C keyword 'static'. I've now completed the necessary
patch, which passes regression. As requested, I'm providing notice now.
I will commit this on Friday. Since this touches almost every source 
file, there will probably be some conflicts with any new code you 
haven't committed.

The advantages of this patch are:

* Removes a Ghostscript-specific idiom, making the codebase more 
  accessible to new programmers.
* All compilers we support have has support for the 'static' keyword
  for some time.
* Removes one of the obstacles to compiling Ghostscript as C++

The patch removes support for -DNOPRIVATE as well. This has been broken 
for the majority of the past few years, and it is no longer essential
with modern debuggers.

The patch currently only removes the private pseudo keyword. I would 
like to also commute the private_ prefix in macro names. I think this
is ultimately less confusing, since while "private" is semantically 
correct, the prefix actually means that the generated structure is 
declared static in C. Any thoughts on this?

 -r




More information about the gs-devel mailing list