Skip to content

Use the argument-free activateOptions() syntax#636

Merged
swebb2066 merged 9 commits into
masterfrom
use_new_activate_options_signature
Apr 26, 2026
Merged

Use the argument-free activateOptions() syntax#636
swebb2066 merged 9 commits into
masterfrom
use_new_activate_options_signature

Conversation

@swebb2066

@swebb2066 swebb2066 commented Apr 24, 2026

Copy link
Copy Markdown
Contributor

This PR changes all test code that calls activateOptions() and adds a test that demonstrates when an ABI-15-style user-defined appender will work and when it will not (it will generate a compilation error).

which are ambiguous until the other is also set.
*/
#if LOG4CXX_ABI_VERSION <= 15
#define LOG4CXX_ACTIVATE_OPTIONS_FORMAL_PARAMETERS helpers::Pool& p

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is the intention to remove these macros for the next ABI version? It's very confusing to see a method with a macro in the parameter list that may or may not be defined.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, when switching to the new ABI, conditional sections can be resolved using my Boost Wave-based program or unifdef and the ABI version-dependant macros (LOG4CXX_ACTIVATE_OPTIONS_FORMAL_PARAMETERS, LOG4CXX_ACTIVATE_OPTIONS_PARAMETER and LOG4CXX_16_VIRTUAL_SPECIFIER) substituted.

@swebb2066 swebb2066 merged commit 66bc258 into master Apr 26, 2026
34 checks passed
@swebb2066 swebb2066 deleted the use_new_activate_options_signature branch June 6, 2026 07:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants