Derrick Stolee <derrickstolee@xxxxxxxxxx> writes: > I HAVE OPINIONS! :D > > Mostly, there are two things I'd like for you to keep in mind: Nicely summarised. Stepping back a bit, we do not care about how the sources to some pieces of software we depend on, say OpenSSL, match our style guide. It is because we do not even have to see them while working on Git, but also because we do not have to maintain it. So a third-option could be to fill pieces missing from the upstream (e.g. big endian support) and contribute them back, and after that treat them as just one of the external dependencies, just like we happen to have a copy of sha1dc code for convenience but have an option to use the upstream code as a submodule. Assuming that such a "they are just one of our external dependencies, just like OpenSSL or cURL libraries" happens, I would not worry too much about C11, as long as use of roaring bitmaps can be made an optional feature that can be disabled at compile time. Bitmaps are used only for local optimization and never transferred across repositories, so you having only ewah would not prevent you from talking with other people with both ewah and roaring.