IWYU-guided #include rejiggering.

Let's hope this doesn't causes build failures for e.g. musl: I just
know it's good on macOS and our Linux CI.

It's been a long time.

One fix this brings, is I discovered we #include assert.h or cassert
in a lot of places. If those ever happen to be in a file that doesn't
include common.h, or we are before common.h gets included, we're
unawaringly working with the system 'assert' macro again, which
may get disabled for debug builds or at least has different
behavior on crash. We undef 'assert' and redefine it in common.h.

Those were all eliminated, except in one catch-22 spot for
maybe.h: it can't include common.h. A fix might be to
make a fish_assert.h that *usually* common.h exports.
This commit is contained in:
Aaron Gyes
2022-08-20 23:14:48 -07:00
parent 1d81ec3730
commit 14d2a6d8ff
158 changed files with 632 additions and 582 deletions

View File

@@ -12,14 +12,12 @@
#include <unistd.h>
#include <algorithm>
#include <iterator>
#include <map>
#include <mutex>
#include <set>
#include <utility>
#include <vector>
#include "builtins/bind.h"
#include "common.h"
#include "env_dispatch.h"
#include "env_universal_common.h"
@@ -31,6 +29,7 @@
#include "history.h"
#include "input.h"
#include "kill.h"
#include "null_terminated_array.h"
#include "path.h"
#include "proc.h"
#include "reader.h"