[
https://issues.apache.org/jira/browse/DISPATCH-836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17443321#comment-17443321
]
ASF subversion and git services commented on DISPATCH-836:
----------------------------------------------------------
Commit 138d084d7a0d9dbeed2991affffc8f669563be68 in qpid-dispatch's branch
refs/heads/main from Jiri Daněk
[ https://gitbox.apache.org/repos/asf?p=qpid-dispatch.git;h=138d084 ]
DISPATCH-836 Add a .c file for every (non-private) include file (#1211)
> Source file organization suffers from include hell
> --------------------------------------------------
>
> Key: DISPATCH-836
> URL: https://issues.apache.org/jira/browse/DISPATCH-836
> Project: Qpid Dispatch
> Issue Type: Improvement
> Components: Container, Router Node, Routing Engine
> Affects Versions: 0.8.0
> Reporter: Charles E. Rolke
> Assignee: Jiri Daněk
> Priority: Minor
> Fix For: 1.19.0
>
>
> Adding an innocent looking #include to some module may unleash a barrage of
> errors instead of simply defining the header's interface. Reordering and/or
> adding more #include statements is required to get it right.
> A good way to address this is to make certain that each module.h file
> compiles cleanly on its own. It is tedious and pretty unrewarding to check
> each file. One strategy to address this problem is for each module to
> _#include module.h_ as the first include\[1\]. Then every compile checks that
> the module.h files compiles cleanly. This strategy is recommended by
> astitcher and used by qpid-cpp with great results.
> \[1\] One exception to this rule is including the #include Python.h ahead of
> all others. This is a requirement.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]