Next: , Previous: Simple Changes, Up: Change Logs


6.8.4 Conditional Changes

C programs often contain compile-time #if conditionals. Many changes are conditional; sometimes you add a new definition which is entirely contained in a conditional. It is very useful to indicate in the change log the conditions for which the change applies.

Our convention for indicating conditional changes is to use square brackets around the name of the condition.

Here is a simple example, describing a change which is conditional but does not have a function or entity name associated with it:

     * xterm.c [SOLARIS2]: Include string.h.

Here is an entry describing a new definition which is entirely conditional. This new definition for the macro FRAME_WINDOW_P is used only when HAVE_X_WINDOWS is defined:

     * frame.h [HAVE_X_WINDOWS] (FRAME_WINDOW_P): Macro defined.

Here is an entry for a change within the function init_display, whose definition as a whole is unconditional, but the changes themselves are contained in a ‘#ifdef HAVE_LIBNCURSES’ conditional:

     * dispnew.c (init_display) [HAVE_LIBNCURSES]: If X, call tgetent.

Here is an entry for a change that takes affect only when a certain macro is not defined:

     (gethostname) [!HAVE_SOCKETS]: Replace with winsock version.