[SERVER-34803] Automate enforcement of inclusion of mongo/platform/basic.h Created: 02/May/18 Updated: 26/Jul/21 Resolved: 26/Jul/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Internal Code |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Andy Schwerin | Assignee: | Andrew Morrow (Inactive) |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | dev_tools | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Sprint: | Dev Platform 2021-08-09 | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
All cpp files under src/mongo are technically required to include mongo/platform/basic.h as their first include. Over 400 files do not. While this does not lead to an ill effect today, we should either enforce the requirement or remove it. The requirement was originally put in place because Windows header inclusion is messy, and order often matters, so using the inclusion of basic.h to ensure proper windows header inclusion was useful. I do not know if it remains relevant. |