Fix the build on clang-11
Clang tidy 11 got some really neat checks that do a much better job.
Unfortunately, this, combined with the change in how std::executors has
defined how callbacks should work differently in the past, which we
picked up in 1.73, and now in theory we have recursion in a bunch of our
IO loops that we have to break manually. In practice, this is unlikely
to matter, as there's almost a 0% chance that we go through N thousand
requests without ever starving the IO buffer.
Other changes to make this build include:
1. Adding inline on the appropriate places where declared in a header.
2. Removing an Openssl call that did nothing, as the result was
immediately overwritten.
3. Declaring the subproject dependencies as system dependencies, which
silences the clang-tidy checks for those projects.
Tested:
Code builds again, clang-tidy passes
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ic11b1002408e8ac19a17a955e9477cac6e0d7504
diff --git a/http/utility.hpp b/http/utility.hpp
index be50636..19ffe9f 100644
--- a/http/utility.hpp
+++ b/http/utility.hpp
@@ -124,6 +124,7 @@
inline bool isParameterTagCompatible(uint64_t a, uint64_t b)
{
+
if (a == 0)
{
return b == 0;
@@ -151,6 +152,7 @@
constexpr uint64_t getParameterTag(std::string_view s, unsigned p = 0)
{
+
if (p == s.size())
{
return 0;