Commit ab3490b7 authored by Stefan Fritsch's avatar Stefan Fritsch
Browse files

Document the unfortunate side effect of converting ap_log_*error into macros

with respect to #ifdef.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1225478 13f79535-47bb-0310-9956-ffa450edef68
parent 57c62659
Loading
Loading
Loading
Loading
+8 −2
Changes for docs/manual/developer/new_api_2_4.xml: 8 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -164,8 +164,9 @@
    <ul>
      <li>Introduce per-directory, per-module loglevel</li>
      <li>New loglevels APLOG_TRACEn</li>
      <li>ap_log_*error become macro wrappers (fully back-compatible if
          APLOG_MARK macro is used)</li>
      <li>ap_log_*error become macro wrappers (back-compatible if
          APLOG_MARK macro is used, except that is no longer possible to
          use #ifdef inside the argument list)</li>
      <li>piped logging revamped</li>
      <li>module_index added to error_log hook</li>
      <li>new function: ap_log_command_line</li>
@@ -336,6 +337,11 @@
       <br />
    </example>

    <p><code>ap_log_*error</code> are now implemented as macros. This means
       that it is no longer possible to use <code>#ifdef</code> inside the
       argument list of <code>ap_log_*error</code>, as this would cause
       undefined behavor according to C99.</p>

    <p>A <code>server_rec</code> pointer must be passed to
       <code>ap_log_error()</code> when called after startup.  This
       was always appropriate, but there are even more limitations with