Skip to content

Instantly share code, notes, and snippets.

@garrison
Last active September 19, 2021 02:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save garrison/73b2f41fa909ec68311034597e35ab58 to your computer and use it in GitHub Desktop.
Save garrison/73b2f41fa909ec68311034597e35ab58 to your computer and use it in GitHub Desktop.
ekam build failure with ccache on Fedora 34
This file has been truncated, but you can view the full file.
[vagrant@fedora34 ~]$ git clone https://github.com/capnproto/ekam.git
Cloning into 'ekam'...
remote: Enumerating objects: 2218, done.
remote: Counting objects: 100% (273/273), done.
remote: Compressing objects: 100% (159/159), done.
remote: Total 2218 (delta 189), reused 167 (delta 113), pack-reused 1945
Receiving objects: 100% (2218/2218), 1.89 MiB | 2.32 MiB/s, done.
Resolving deltas: 100% (1599/1599), done.
[vagrant@fedora34 ~]$ cd ekam
[vagrant@fedora34 ekam]$ nano Makefile
[vagrant@fedora34 ekam]$ git diff | cat
diff --git a/Makefile b/Makefile
index 2ac2361..97d82e5 100644
--- a/Makefile
+++ b/Makefile
@@ -34,7 +34,7 @@ all: bin/ekam
bin/ekam: bin/ekam-bootstrap | deps
$(call color,building ekam with ekam)
@rm -f bin/ekam
- @CXX="$(CXX)" CXXFLAGS="-std=c++14 $(CXXFLAGS) -pthread" LIBS="-pthread" bin/ekam-bootstrap -j$(PARALLEL)
+ @CXX="$(CXX)" CXXFLAGS="-std=c++14 $(CXXFLAGS) -pthread" LIBS="-pthread" bin/ekam-bootstrap -j$(PARALLEL) -l 2000
@test -e bin/ekam && printf "=====================================================\nSUCCESS\nOutput is at bin/ekam\n=====================================================\n"
# NOTE: Needs a full install of Ekam instead of the bootstrap so that LSP is available.
[vagrant@fedora34 ekam]$ make > build-log
Cloning into 'deps/capnproto'...
remote: Enumerating objects: 29441, done.
remote: Counting objects: 100% (1692/1692), done.
remote: Compressing objects: 100% (705/705), done.
remote: Total 29441 (delta 1216), reused 1268 (delta 979), pack-reused 27749
Receiving objects: 100% (29441/29441), 19.69 MiB | 3.82 MiB/s, done.
Resolving deltas: 100% (21548/21548), done.
make: *** [Makefile:37: bin/ekam] Error 1
[vagrant@fedora34 ekam]$ cat build-log
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/base/Debug.o -c src/base/Debug.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/base/Hash.o -c src/base/Hash.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/base/OwnedPtr.o -c src/base/OwnedPtr.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/base/Promise.o -c src/base/Promise.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/base/sha256.o -c src/base/sha256.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/ByteStream.o -c src/os/ByteStream.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/DiskFile.o -c src/os/DiskFile.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/EpollEventManager.o -c src/os/EpollEventManager.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/EventGroup.o -c src/os/EventGroup.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/EventManager.o -c src/os/EventManager.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/File.o -c src/os/File.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/OsHandle.o -c src/os/OsHandle.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/Socket.o -c src/os/Socket.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/os/Subprocess.o -c src/os/Subprocess.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/Action.o -c src/ekam/Action.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/ActionUtil.o -c src/ekam/ActionUtil.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/ConsoleDashboard.o -c src/ekam/ConsoleDashboard.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/CppActionFactory.o -c src/ekam/CppActionFactory.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/Dashboard.o -c src/ekam/Dashboard.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/Driver.o -c src/ekam/Driver.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/ExecPluginActionFactory.o -c src/ekam/ExecPluginActionFactory.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/MuxDashboard.o -c src/ekam/MuxDashboard.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/SimpleDashboard.o -c src/ekam/SimpleDashboard.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/Tag.o -c src/ekam/Tag.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/ekam.o -c src/ekam/ekam.cpp
src/base/Debug.h src/base/Hash.h src/base/OwnedPtr.h src/base/Promise.h src/base/Table.h src/base/sha256.h src/os/ByteStream.h src/os/DiskFile.h src/os/EpollEventManager.h src/os/EventGroup.h src/os/EventManager.h src/os/File.h src/os/KqueueEventManager.h src/os/OsHandle.h src/os/PollEventManager.h src/os/Socket.h src/os/Subprocess.h src/ekam/Action.h src/ekam/ActionUtil.h src/ekam/ConsoleDashboard.h src/ekam/CppActionFactory.h src/ekam/Dashboard.h src/ekam/Driver.h src/ekam/ExecPluginActionFactory.h src/ekam/MuxDashboard.h src/ekam/ProtoDashboard.h src/ekam/SimpleDashboard.h src/ekam/Tag.h
g++ -Isrc -fPIC -std=c++14 -pthread -o tmp/bootstrap/ekam/initNetworkDashboardStub.o -c src/ekam/initNetworkDashboardStub.cpp
==== compiling bootstrap ekam ====
g++ -Isrc -std=c++14 -pthread tmp/bootstrap/base/Debug.o tmp/bootstrap/base/Hash.o tmp/bootstrap/base/OwnedPtr.o tmp/bootstrap/base/Promise.o tmp/bootstrap/base/sha256.o tmp/bootstrap/os/ByteStream.o tmp/bootstrap/os/DiskFile.o tmp/bootstrap/os/EpollEventManager.o tmp/bootstrap/os/EventGroup.o tmp/bootstrap/os/EventManager.o tmp/bootstrap/os/File.o tmp/bootstrap/os/OsHandle.o tmp/bootstrap/os/Socket.o tmp/bootstrap/os/Subprocess.o tmp/bootstrap/ekam/Action.o tmp/bootstrap/ekam/ActionUtil.o tmp/bootstrap/ekam/ConsoleDashboard.o tmp/bootstrap/ekam/CppActionFactory.o tmp/bootstrap/ekam/Dashboard.o tmp/bootstrap/ekam/Driver.o tmp/bootstrap/ekam/ExecPluginActionFactory.o tmp/bootstrap/ekam/MuxDashboard.o tmp/bootstrap/ekam/SimpleDashboard.o tmp/bootstrap/ekam/Tag.o tmp/bootstrap/ekam/ekam.o tmp/bootstrap/ekam/initNetworkDashboardStub.o -o bin/ekam-bootstrap
==== downloading capnproto ====
git clone https://github.com/capnproto/capnproto.git deps/capnproto
==== building ekam with ekam ====
[RUNNING] learn: capnp/bootstrap-test.ekam-rule
[RUNNING] learn: capnp/capnpc.ekam-rule
[BLOCKED] learn: capnp/bootstrap-test.ekam-rule
[RUNNING] learn: capnp/compiler/capnp-test.ekam-rule
[DONE ] learn: capnp/capnpc.ekam-rule
[RUNNING] capnpc: capnp/c++.capnp
[PASSED ] learn: capnp/compiler/capnp-test.ekam-rule
[RUNNING] capnpc: capnp/compat/byte-stream.capnp
[DONE ] capnpc: capnp/c++.capnp
[RUNNING] capnpc: capnp/compat/http-over-capnp.capnp
[BLOCKED] capnpc: capnp/compat/byte-stream.capnp
[RUNNING] capnpc: capnp/compat/json-rpc.capnp
[BLOCKED] capnpc: capnp/compat/http-over-capnp.capnp
[RUNNING] capnpc: capnp/compat/json-test.capnp
[BLOCKED] capnpc: capnp/compat/json-rpc.capnp
[RUNNING] capnpc: capnp/compat/json.capnp
[BLOCKED] capnpc: capnp/compat/json-test.capnp
[RUNNING] capnpc: capnp/compiler/grammar.capnp
[DONE ] capnpc: capnp/compat/json.capnp
[RUNNING] capnpc: capnp/compiler/lexer.capnp
[DONE ] capnpc: capnp/compiler/grammar.capnp
[RUNNING] capnpc: capnp/persistent.capnp
[DONE ] capnpc: capnp/compiler/lexer.capnp
[RUNNING] capnpc: capnp/rpc-twoparty.capnp
[DONE ] capnpc: capnp/persistent.capnp
[RUNNING] capnpc: capnp/rpc.capnp
[DONE ] capnpc: capnp/rpc-twoparty.capnp
[RUNNING] capnpc: capnp/schema.capnp
[DONE ] capnpc: capnp/rpc.capnp
[RUNNING] capnpc: capnp/stream.capnp
[DONE ] capnpc: capnp/schema.capnp
[RUNNING] capnpc: capnp/test-import.capnp
[DONE ] capnpc: capnp/stream.capnp
[RUNNING] capnpc: capnp/test-import2.capnp
[BLOCKED] capnpc: capnp/test-import.capnp
[RUNNING] capnpc: capnp/test.capnp
[BLOCKED] capnpc: capnp/test-import2.capnp
[RUNNING] capnpc: ekam/dashboard.capnp
[BLOCKED] capnpc: capnp/test.capnp
[RUNNING] capnpc: ekam/langserve.capnp
[BLOCKED] capnpc: ekam/dashboard.capnp
[RUNNING] learn: ekam/rules/compile.ekam-rule
[BLOCKED] capnpc: ekam/langserve.capnp
[RUNNING] learn: ekam/rules/include.ekam-rule
[DONE ] learn: ekam/rules/compile.ekam-rule
[RUNNING] compile: capnp/afl-testcase.c++
[BLOCKED] compile: capnp/afl-testcase.c++
[RUNNING] compile: capnp/any-test.c++
[DONE ] learn: ekam/rules/include.ekam-rule
[BLOCKED] compile: capnp/any-test.c++
[RUNNING] compile: capnp/any.c++
[RUNNING] compile: capnp/arena.c++
[BLOCKED] compile: capnp/any.c++
[RUNNING] compile: capnp/blob-test.c++
[BLOCKED] compile: capnp/arena.c++
[RUNNING] compile: capnp/blob.c++
[BLOCKED] compile: capnp/blob-test.c++
[RUNNING] compile: capnp/c++.capnp.c++
[BLOCKED] compile: capnp/blob.c++
[RUNNING] compile: capnp/canonicalize-test.c++
[BLOCKED] compile: capnp/c++.capnp.c++
[RUNNING] compile: capnp/capability-test.c++
[BLOCKED] compile: capnp/canonicalize-test.c++
[RUNNING] compile: capnp/capability.c++
[BLOCKED] compile: capnp/capability-test.c++
[RUNNING] compile: capnp/common-test.c++
[BLOCKED] compile: capnp/capability.c++
[RUNNING] compile: capnp/compat/byte-stream-test.c++
[BLOCKED] compile: capnp/compat/byte-stream-test.c++
[RUNNING] compile: capnp/compat/byte-stream.c++
[BLOCKED] compile: capnp/common-test.c++
[RUNNING] compile: capnp/compat/http-over-capnp-test.c++
[BLOCKED] compile: capnp/compat/byte-stream.c++
[RUNNING] compile: capnp/compat/http-over-capnp.c++
[BLOCKED] compile: capnp/compat/http-over-capnp-test.c++
[RUNNING] compile: capnp/compat/json-rpc-test.c++
[BLOCKED] compile: capnp/compat/http-over-capnp.c++
[RUNNING] compile: capnp/compat/json-rpc.c++
[BLOCKED] compile: capnp/compat/json-rpc-test.c++
[RUNNING] compile: capnp/compat/json-test.c++
[BLOCKED] compile: capnp/compat/json-rpc.c++
[RUNNING] compile: capnp/compat/json.c++
[BLOCKED] compile: capnp/compat/json-test.c++
[RUNNING] compile: capnp/compat/json.capnp.c++
[BLOCKED] compile: capnp/compat/json.c++
[RUNNING] compile: capnp/compat/websocket-rpc-test.c++
[BLOCKED] compile: capnp/compat/json.capnp.c++
[RUNNING] compile: capnp/compat/websocket-rpc.c++
[BLOCKED] compile: capnp/compat/websocket-rpc-test.c++
[RUNNING] compile: capnp/compiler/capnp.c++
[BLOCKED] compile: capnp/compat/websocket-rpc.c++
[RUNNING] compile: capnp/compiler/capnpc-c++.c++
[BLOCKED] compile: capnp/compiler/capnp.c++
[RUNNING] compile: capnp/compiler/capnpc-capnp.c++
[BLOCKED] compile: capnp/compiler/capnpc-c++.c++
[RUNNING] compile: capnp/compiler/compiler.c++
[BLOCKED] compile: capnp/compiler/capnpc-capnp.c++
[RUNNING] compile: capnp/compiler/error-reporter.c++
[BLOCKED] compile: capnp/compiler/compiler.c++
[RUNNING] compile: capnp/compiler/evolution-test.c++
[BLOCKED] compile: capnp/compiler/error-reporter.c++
[RUNNING] compile: capnp/compiler/generics.c++
[BLOCKED] compile: capnp/compiler/evolution-test.c++
[RUNNING] compile: capnp/compiler/grammar.capnp.c++
[BLOCKED] compile: capnp/compiler/generics.c++
[RUNNING] compile: capnp/compiler/lexer-test.c++
[BLOCKED] compile: capnp/compiler/grammar.capnp.c++
[RUNNING] compile: capnp/compiler/lexer.c++
[BLOCKED] compile: capnp/compiler/lexer.c++
[RUNNING] compile: capnp/compiler/lexer.capnp.c++
[BLOCKED] compile: capnp/compiler/lexer-test.c++
[RUNNING] compile: capnp/compiler/module-loader.c++
[BLOCKED] compile: capnp/compiler/lexer.capnp.c++
[RUNNING] compile: capnp/compiler/node-translator.c++
[BLOCKED] compile: capnp/compiler/module-loader.c++
[RUNNING] compile: capnp/compiler/parser.c++
[BLOCKED] compile: capnp/compiler/node-translator.c++
[RUNNING] compile: capnp/compiler/type-id-test.c++
[BLOCKED] compile: capnp/compiler/parser.c++
[RUNNING] compile: capnp/compiler/type-id.c++
[BLOCKED] compile: capnp/compiler/type-id-test.c++
[RUNNING] compile: capnp/dynamic-capability.c++
[BLOCKED] compile: capnp/compiler/type-id.c++
[RUNNING] compile: capnp/dynamic-test.c++
[BLOCKED] compile: capnp/dynamic-capability.c++
[RUNNING] compile: capnp/dynamic.c++
[BLOCKED] compile: capnp/dynamic-test.c++
[RUNNING] compile: capnp/encoding-test.c++
[BLOCKED] compile: capnp/encoding-test.c++
[RUNNING] compile: capnp/endian-fallback-test.c++
[BLOCKED] compile: capnp/dynamic.c++
[RUNNING] compile: capnp/endian-reverse-test.c++
[BLOCKED] compile: capnp/endian-fallback-test.c++
[RUNNING] compile: capnp/endian-test.c++
[BLOCKED] compile: capnp/endian-reverse-test.c++
[RUNNING] compile: capnp/ez-rpc-test.c++
[BLOCKED] compile: capnp/endian-test.c++
[RUNNING] compile: capnp/ez-rpc.c++
[BLOCKED] compile: capnp/ez-rpc-test.c++
[RUNNING] compile: capnp/fuzz-test.c++
[BLOCKED] compile: capnp/ez-rpc.c++
[RUNNING] compile: capnp/layout-test.c++
[BLOCKED] compile: capnp/fuzz-test.c++
[RUNNING] compile: capnp/layout.c++
[BLOCKED] compile: capnp/layout-test.c++
[RUNNING] compile: capnp/list.c++
[BLOCKED] compile: capnp/layout.c++
[RUNNING] compile: capnp/llvm-fuzzer-testcase.c++
[BLOCKED] compile: capnp/list.c++
[RUNNING] compile: capnp/membrane-test.c++
[BLOCKED] compile: capnp/llvm-fuzzer-testcase.c++
[RUNNING] compile: capnp/membrane.c++
[BLOCKED] compile: capnp/membrane.c++
[RUNNING] compile: capnp/message-test.c++
[BLOCKED] compile: capnp/membrane-test.c++
[RUNNING] compile: capnp/message.c++
[BLOCKED] compile: capnp/message-test.c++
[RUNNING] compile: capnp/orphan-test.c++
[BLOCKED] compile: capnp/message.c++
[RUNNING] compile: capnp/persistent.capnp.c++
[BLOCKED] compile: capnp/orphan-test.c++
[RUNNING] compile: capnp/reconnect-test.c++
[BLOCKED] compile: capnp/persistent.capnp.c++
[RUNNING] compile: capnp/reconnect.c++
[BLOCKED] compile: capnp/reconnect-test.c++
[RUNNING] compile: capnp/rpc-test.c++
[BLOCKED] compile: capnp/reconnect.c++
[RUNNING] compile: capnp/rpc-twoparty-test.c++
[BLOCKED] compile: capnp/rpc-test.c++
[RUNNING] compile: capnp/rpc-twoparty.c++
[BLOCKED] compile: capnp/rpc-twoparty-test.c++
[RUNNING] compile: capnp/rpc-twoparty.capnp.c++
[BLOCKED] compile: capnp/rpc-twoparty.c++
[RUNNING] compile: capnp/rpc.c++
[BLOCKED] compile: capnp/rpc-twoparty.capnp.c++
[RUNNING] compile: capnp/rpc.capnp.c++
[BLOCKED] compile: capnp/rpc.c++
[RUNNING] compile: capnp/schema-loader-test.c++
[BLOCKED] compile: capnp/rpc.capnp.c++
[RUNNING] compile: capnp/schema-loader.c++
[BLOCKED] compile: capnp/schema-loader-test.c++
[RUNNING] compile: capnp/schema-parser-test.c++
[BLOCKED] compile: capnp/schema-loader.c++
[RUNNING] compile: capnp/schema-parser.c++
[BLOCKED] compile: capnp/schema-parser-test.c++
[RUNNING] compile: capnp/schema-test.c++
[BLOCKED] compile: capnp/schema-parser.c++
[RUNNING] compile: capnp/schema.c++
[BLOCKED] compile: capnp/schema-test.c++
[RUNNING] compile: capnp/schema.capnp.c++
[BLOCKED] compile: capnp/schema.c++
[RUNNING] compile: capnp/serialize-async-test.c++
[BLOCKED] compile: capnp/schema.capnp.c++
[RUNNING] compile: capnp/serialize-async.c++
[BLOCKED] compile: capnp/serialize-async-test.c++
[RUNNING] compile: capnp/serialize-packed-test.c++
[BLOCKED] compile: capnp/serialize-async.c++
[RUNNING] compile: capnp/serialize-packed.c++
[BLOCKED] compile: capnp/serialize-packed-test.c++
[RUNNING] compile: capnp/serialize-test.c++
[BLOCKED] compile: capnp/serialize-packed.c++
[RUNNING] compile: capnp/serialize-text-test.c++
[BLOCKED] compile: capnp/serialize-test.c++
[RUNNING] compile: capnp/serialize-text.c++
[BLOCKED] compile: capnp/serialize-text-test.c++
[RUNNING] compile: capnp/serialize.c++
[BLOCKED] compile: capnp/serialize-text.c++
[RUNNING] compile: capnp/stream.capnp.c++
[BLOCKED] compile: capnp/serialize.c++
[RUNNING] compile: capnp/stringify-test.c++
[BLOCKED] compile: capnp/stream.capnp.c++
[RUNNING] compile: capnp/stringify.c++
[BLOCKED] compile: capnp/stringify-test.c++
[RUNNING] compile: capnp/test-util.c++
[BLOCKED] compile: capnp/stringify.c++
[RUNNING] compile: ekam/ekam-langserve.c++
[BLOCKED] compile: capnp/test-util.c++
[RUNNING] compile: base/Debug.cpp
[BLOCKED] compile: ekam/ekam-langserve.c++
[RUNNING] compile: base/Hash.cpp
[BLOCKED] compile: base/Debug.cpp
[RUNNING] compile: base/OwnedPtr.cpp
[BLOCKED] compile: base/Hash.cpp
[RUNNING] compile: base/Promise.cpp
[BLOCKED] compile: base/OwnedPtr.cpp
[RUNNING] compile: base/Promise_test.cpp
[BLOCKED] compile: base/Promise.cpp
[RUNNING] compile: base/Table_test.cpp
[BLOCKED] compile: base/Promise_test.cpp
[RUNNING] compile: base/sha256.cpp
[BLOCKED] compile: base/Table_test.cpp
[RUNNING] compile: ekam/Action.cpp
[BLOCKED] compile: base/sha256.cpp
[RUNNING] compile: ekam/ActionUtil.cpp
[BLOCKED] compile: ekam/Action.cpp
[RUNNING] compile: ekam/ConsoleDashboard.cpp
[BLOCKED] compile: ekam/ActionUtil.cpp
[RUNNING] compile: ekam/CppActionFactory.cpp
[BLOCKED] compile: ekam/ConsoleDashboard.cpp
[RUNNING] compile: ekam/Dashboard.cpp
[BLOCKED] compile: ekam/CppActionFactory.cpp
[RUNNING] compile: ekam/Driver.cpp
[BLOCKED] compile: ekam/Dashboard.cpp
[RUNNING] compile: ekam/ExecPluginActionFactory.cpp
[BLOCKED] compile: ekam/Driver.cpp
[RUNNING] compile: ekam/MuxDashboard.cpp
[BLOCKED] compile: ekam/ExecPluginActionFactory.cpp
[RUNNING] compile: ekam/ProtoDashboard.cpp
[BLOCKED] compile: ekam/MuxDashboard.cpp
[RUNNING] compile: ekam/SimpleDashboard.cpp
[BLOCKED] compile: ekam/ProtoDashboard.cpp
[RUNNING] compile: ekam/Tag.cpp
[BLOCKED] compile: ekam/SimpleDashboard.cpp
[RUNNING] compile: ekam/ekam-client.cpp
[BLOCKED] compile: ekam/Tag.cpp
[RUNNING] compile: ekam/ekam.cpp
[BLOCKED] compile: ekam/ekam-client.cpp
[RUNNING] compile: ekam/initNetworkDashboardStub.cpp
[BLOCKED] compile: ekam/ekam.cpp
[RUNNING] learn: ekam/rules/install.ekam-rule
[DONE ] learn: ekam/rules/install.ekam-rule
[RUNNING] install: capnp/compiler/capnp.ekam-manifest
[BLOCKED] compile: ekam/initNetworkDashboardStub.cpp
[RUNNING] install: ekam/ekam.ekam-manifest
[BLOCKED] install: capnp/compiler/capnp.ekam-manifest
[RUNNING] compile: ekam/rules/intercept.c
[BLOCKED] install: ekam/ekam.ekam-manifest
[RUNNING] learn: ekam/rules/intercept.ekam-rule
[DONE ] compile: ekam/rules/intercept.c
[RUNNING] learn: ekam/rules/proto.ekam-rule
[DONE ] learn: ekam/rules/proto.ekam-rule
[RUNNING] learn: ekam/rules/test.ekam-rule
[DONE ] learn: ekam/rules/test.ekam-rule
[RUNNING] compile: kj/arena-test.c++
[BLOCKED] compile: kj/arena-test.c++
[RUNNING] compile: kj/arena.c++
[BLOCKED] compile: kj/arena.c++
[RUNNING] compile: kj/array-test.c++
[BLOCKED] compile: kj/array-test.c++
[RUNNING] compile: kj/array.c++
[BLOCKED] compile: kj/array.c++
[RUNNING] compile: kj/async-coroutine-test.c++
[BLOCKED] compile: kj/async-coroutine-test.c++
[RUNNING] compile: kj/async-io-test.c++
[BLOCKED] compile: kj/async-io-test.c++
[RUNNING] compile: kj/async-io-unix.c++
[BLOCKED] compile: kj/async-io-unix.c++
[RUNNING] compile: kj/async-io-win32.c++
[BLOCKED] compile: kj/async-io-win32.c++
[RUNNING] compile: kj/async-io.c++
[BLOCKED] compile: kj/async-io.c++
[RUNNING] compile: kj/async-queue-test.c++
[BLOCKED] compile: kj/async-queue-test.c++
[RUNNING] compile: kj/async-test.c++
[BLOCKED] compile: kj/async-test.c++
[RUNNING] compile: kj/async-unix-test.c++
[BLOCKED] compile: kj/async-unix-test.c++
[RUNNING] compile: kj/async-unix-xthread-test.c++
[BLOCKED] compile: kj/async-unix-xthread-test.c++
[RUNNING] compile: kj/async-unix.c++
[BLOCKED] compile: kj/async-unix.c++
[RUNNING] compile: kj/async-win32-test.c++
[BLOCKED] compile: kj/async-win32-test.c++
[RUNNING] compile: kj/async-win32-xthread-test.c++
[BLOCKED] compile: kj/async-win32-xthread-test.c++
[RUNNING] compile: kj/async-win32.c++
[BLOCKED] compile: kj/async-win32.c++
[RUNNING] compile: kj/async-xthread-test.c++
[BLOCKED] compile: kj/async-xthread-test.c++
[RUNNING] compile: kj/async.c++
[BLOCKED] compile: kj/async.c++
[RUNNING] compile: kj/common-test.c++
[BLOCKED] compile: kj/common-test.c++
[RUNNING] compile: kj/common.c++
[BLOCKED] compile: kj/common.c++
[RUNNING] compile: kj/compat/gzip-test.c++
[BLOCKED] compile: kj/compat/gzip-test.c++
[RUNNING] compile: kj/compat/gzip.c++
[BLOCKED] compile: kj/compat/gzip.c++
[RUNNING] compile: kj/compat/http-socketpair-test.c++
[BLOCKED] compile: kj/compat/http-socketpair-test.c++
[RUNNING] compile: kj/compat/http-test.c++
[BLOCKED] compile: kj/compat/http-test.c++
[RUNNING] compile: kj/compat/http.c++
[BLOCKED] compile: kj/compat/http.c++
[RUNNING] compile: kj/compat/readiness-io-test.c++
[BLOCKED] compile: kj/compat/readiness-io-test.c++
[RUNNING] compile: kj/compat/readiness-io.c++
[BLOCKED] compile: kj/compat/readiness-io.c++
[RUNNING] compile: kj/compat/tls-test.c++
[BLOCKED] compile: kj/compat/tls-test.c++
[RUNNING] compile: kj/compat/tls.c++
[BLOCKED] compile: kj/compat/tls.c++
[RUNNING] compile: kj/compat/url-test.c++
[BLOCKED] compile: kj/compat/url-test.c++
[RUNNING] compile: kj/compat/url.c++
[BLOCKED] compile: kj/compat/url.c++
[RUNNING] compile: kj/debug-test.c++
[BLOCKED] compile: kj/debug-test.c++
[RUNNING] compile: kj/debug.c++
[BLOCKED] compile: kj/debug.c++
[RUNNING] compile: kj/encoding-test.c++
[BLOCKED] compile: kj/encoding-test.c++
[RUNNING] compile: kj/encoding.c++
[BLOCKED] compile: kj/encoding.c++
[RUNNING] compile: kj/exception-test.c++
[BLOCKED] compile: kj/exception-test.c++
[RUNNING] compile: kj/exception.c++
[BLOCKED] compile: kj/exception.c++
[RUNNING] compile: kj/filesystem-disk-generic-test.c++
[BLOCKED] compile: kj/filesystem-disk-generic-test.c++
[RUNNING] compile: kj/filesystem-disk-old-kernel-test.c++
[BLOCKED] compile: kj/filesystem-disk-old-kernel-test.c++
[RUNNING] compile: kj/filesystem-disk-test.c++
[BLOCKED] compile: kj/filesystem-disk-test.c++
[RUNNING] compile: kj/filesystem-disk-unix.c++
[BLOCKED] compile: kj/filesystem-disk-unix.c++
[RUNNING] compile: kj/filesystem-disk-win32.c++
[BLOCKED] compile: kj/filesystem-disk-win32.c++
[RUNNING] compile: kj/filesystem-test.c++
[BLOCKED] compile: kj/filesystem-test.c++
[RUNNING] compile: kj/filesystem.c++
[BLOCKED] compile: kj/filesystem.c++
[RUNNING] compile: kj/function-test.c++
[DONE ] learn: ekam/rules/intercept.ekam-rule
[RUNNING] compile: kj/hash.c++
[BLOCKED] compile: kj/function-test.c++
[BLOCKED] compile: kj/hash.c++
[RUNNING] compile: kj/io-test.c++
[RUNNING] compile: kj/io.c++
[BLOCKED] compile: kj/io-test.c++
[RUNNING] compile: kj/list-test.c++
[BLOCKED] compile: kj/io.c++
[RUNNING] compile: kj/list.c++
[BLOCKED] compile: kj/list-test.c++
[RUNNING] compile: kj/main.c++
[BLOCKED] compile: kj/list.c++
[BLOCKED] compile: kj/main.c++
[RUNNING] compile: kj/map-test.c++
[RUNNING] compile: kj/memory-test.c++
[BLOCKED] compile: kj/map-test.c++
[RUNNING] compile: kj/memory.c++
[BLOCKED] compile: kj/memory-test.c++
[RUNNING] compile: kj/mutex-test.c++
[BLOCKED] compile: kj/mutex-test.c++
[RUNNING] compile: kj/mutex.c++
[BLOCKED] compile: kj/mutex.c++
[RUNNING] compile: kj/one-of-test.c++
[BLOCKED] compile: kj/one-of-test.c++
[RUNNING] compile: kj/parse/char-test.c++
[BLOCKED] compile: kj/parse/char-test.c++
[RUNNING] compile: kj/parse/char.c++
[DONE ] compile: kj/memory.c++
[RUNNING] compile: kj/parse/common-test.c++
[BLOCKED] compile: kj/parse/char.c++
[BLOCKED] compile: kj/parse/common-test.c++
[RUNNING] compile: kj/refcount-test.c++
[RUNNING] compile: kj/refcount.c++
[BLOCKED] compile: kj/refcount-test.c++
[RUNNING] compile: kj/source-location.c++
[BLOCKED] compile: kj/source-location.c++
[BLOCKED] compile: kj/refcount.c++
[RUNNING] compile: kj/std/iostream-test.c++
[RUNNING] compile: kj/string-test.c++
[BLOCKED] compile: kj/string-test.c++
[RUNNING] compile: kj/string-tree-test.c++
[BLOCKED] compile: kj/string-tree-test.c++
[RUNNING] compile: kj/string-tree.c++
[BLOCKED] compile: kj/std/iostream-test.c++
[RUNNING] compile: kj/string.c++
[BLOCKED] compile: kj/string-tree.c++
[RUNNING] compile: kj/table-test.c++
[BLOCKED] compile: kj/string.c++
[RUNNING] compile: kj/table.c++
[BLOCKED] compile: kj/table-test.c++
[RUNNING] compile: kj/test-helpers.c++
[BLOCKED] compile: kj/table.c++
[RUNNING] compile: kj/test-test.c++
[BLOCKED] compile: kj/test-helpers.c++
[RUNNING] compile: kj/test.c++
[BLOCKED] compile: kj/test-test.c++
[RUNNING] compile: kj/thread-test.c++
[BLOCKED] compile: kj/test.c++
[RUNNING] compile: kj/thread.c++
[BLOCKED] compile: kj/thread-test.c++
[RUNNING] compile: kj/threadlocal-test.c++
[BLOCKED] compile: kj/thread.c++
[RUNNING] compile: kj/time-test.c++
[BLOCKED] compile: kj/threadlocal-test.c++
[RUNNING] compile: kj/time.c++
[BLOCKED] compile: kj/time-test.c++
[RUNNING] compile: kj/timer.c++
[BLOCKED] compile: kj/time.c++
[RUNNING] compile: kj/tuple-test.c++
[BLOCKED] compile: kj/timer.c++
[RUNNING] compile: kj/units-test.c++
[BLOCKED] compile: kj/tuple-test.c++
[RUNNING] compile: kj/units.c++
[BLOCKED] compile: kj/units.c++
[BLOCKED] compile: kj/units-test.c++
[RUNNING] compile: os/ByteStream.cpp
[RUNNING] compile: os/DiskFile.cpp
[BLOCKED] compile: os/DiskFile.cpp
[RUNNING] compile: os/EpollEventManager.cpp
[BLOCKED] compile: os/EpollEventManager.cpp
[RUNNING] compile: os/EventGroup.cpp
[BLOCKED] compile: os/EventGroup.cpp
[RUNNING] compile: os/EventManager.cpp
[BLOCKED] compile: os/EventManager.cpp
[RUNNING] compile: os/File.cpp
[BLOCKED] compile: os/File.cpp
[RUNNING] compile: os/OsHandle.cpp
[BLOCKED] compile: os/OsHandle.cpp
[BLOCKED] compile: os/ByteStream.cpp
[RUNNING] compile: os/Socket.cpp
[RUNNING] compile: os/Subprocess.cpp
[BLOCKED] compile: os/Subprocess.cpp
[RUNNING] learn: capnp/compiler/capnp-test.ekam-rule
[BLOCKED] learn: capnp/compiler/capnp-test.ekam-rule
[RUNNING] compile: kj/filesystem.c++
[DONE ] compile: os/Socket.cpp
[RUNNING] compile: kj/filesystem-test.c++
[DONE ] compile: kj/filesystem.c++
[RUNNING] compile: kj/filesystem-disk-win32.c++
[DONE ] compile: kj/filesystem-disk-win32.c++
[RUNNING] compile: kj/filesystem-disk-unix.c++
[DONE ] compile: kj/filesystem-disk-unix.c++
/ekam-provider/canonical/kj/filesystem-disk-unix.c++: In member function ‘kj::Maybe<kj::String> kj::{anonymous}::DiskHandle::tryReadlink(kj::PathPtr) const’:
/ekam-provider/canonical/kj/filesystem-disk-unix.c++:818:13: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
818 | if (n >= buf.size()) {
| ~~^~~~~~~~~~~~~
[RUNNING] compile: kj/filesystem-disk-test.c++
[DONE ] compile: kj/filesystem-test.c++
[RUNNING] link: kj/filesystem-test.o
[BLOCKED] link: kj/filesystem-test.o
[RUNNING] compile: kj/filesystem-disk-old-kernel-test.c++
[DONE ] compile: kj/filesystem-disk-test.c++
[RUNNING] link: kj/filesystem-disk-test.o
[BLOCKED] link: kj/filesystem-disk-test.o
[RUNNING] compile: kj/filesystem-disk-generic-test.c++
[DONE ] compile: kj/filesystem-disk-old-kernel-test.c++
[RUNNING] link: kj/filesystem-disk-old-kernel-test.o
[BLOCKED] link: kj/filesystem-disk-old-kernel-test.o
[RUNNING] compile: kj/exception.c++
[BLOCKED] compile: kj/exception.c++
[RUNNING] compile: kj/exception-test.c++
[DONE ] compile: kj/exception-test.c++
[RUNNING] link: kj/exception-test.o
[BLOCKED] link: kj/exception-test.o
[RUNNING] compile: kj/encoding.c++
[DONE ] compile: kj/encoding.c++
[RUNNING] compile: kj/encoding-test.c++
[DONE ] compile: kj/encoding-test.c++
[RUNNING] link: kj/encoding-test.o
[BLOCKED] link: kj/encoding-test.o
[RUNNING] compile: kj/debug.c++
[DONE ] compile: kj/filesystem-disk-generic-test.c++
In file included from /ekam-provider/canonical/kj/filesystem-disk-generic-test.c++:66:
/ekam-provider/canonical/kj/filesystem-disk-unix.c++: In member function ‘kj::Maybe<kj::String> kj::{anonymous}::DiskHandle::tryReadlink(kj::PathPtr) const’:
/ekam-provider/canonical/kj/filesystem-disk-unix.c++:818:13: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
818 | if (n >= buf.size()) {
| ~~^~~~~~~~~~~~~
[RUNNING] link: kj/filesystem-disk-generic-test.o
[BLOCKED] link: kj/filesystem-disk-generic-test.o
[RUNNING] compile: kj/debug-test.c++
[DONE ] compile: kj/debug.c++
[RUNNING] compile: kj/compat/url.c++
[DONE ] compile: kj/compat/url.c++
[RUNNING] compile: kj/compat/url-test.c++
[DONE ] compile: kj/debug-test.c++
[RUNNING] link: kj/debug-test.o
[BLOCKED] link: kj/debug-test.o
[RUNNING] compile: kj/compat/tls.c++
[DONE ] compile: kj/compat/tls.c++
[RUNNING] compile: kj/compat/tls-test.c++
[DONE ] compile: kj/compat/tls-test.c++
[RUNNING] compile: kj/compat/readiness-io.c++
[DONE ] compile: kj/compat/readiness-io.c++
[RUNNING] compile: kj/compat/readiness-io-test.c++
[DONE ] compile: kj/compat/url-test.c++
[RUNNING] link: kj/compat/url-test.o
[BLOCKED] link: kj/compat/url-test.o
[RUNNING] compile: kj/compat/http.c++
[DONE ] compile: kj/compat/readiness-io-test.c++
[RUNNING] link: kj/compat/readiness-io-test.o
[BLOCKED] link: kj/compat/readiness-io-test.o
[RUNNING] compile: kj/compat/http-test.c++
[DONE ] compile: kj/compat/http.c++
[RUNNING] compile: kj/compat/http-socketpair-test.c++
[DONE ] compile: kj/compat/http-test.c++
[RUNNING] link: kj/compat/http-test.o
[BLOCKED] link: kj/compat/http-test.o
[RUNNING] compile: kj/compat/gzip.c++
[DONE ] compile: kj/compat/gzip.c++
[RUNNING] compile: kj/compat/gzip-test.c++
[DONE ] compile: kj/compat/gzip-test.c++
[RUNNING] compile: kj/common.c++
[DONE ] compile: kj/common.c++
[RUNNING] compile: kj/common-test.c++
[DONE ] compile: kj/common-test.c++
[RUNNING] link: kj/common-test.o
[BLOCKED] link: kj/common-test.o
[RUNNING] compile: kj/async.c++
[DONE ] compile: kj/async.c++
[RUNNING] compile: kj/async-xthread-test.c++
[DONE ] compile: kj/async-xthread-test.c++
[RUNNING] link: kj/async-xthread-test.o
[BLOCKED] link: kj/async-xthread-test.o
[RUNNING] compile: kj/async-win32.c++
[DONE ] compile: kj/async-win32.c++
[RUNNING] compile: kj/async-win32-xthread-test.c++
[DONE ] compile: kj/async-win32-xthread-test.c++
[RUNNING] compile: kj/async-win32-test.c++
[DONE ] compile: kj/async-win32-test.c++
[RUNNING] compile: kj/async-unix.c++
[DONE ] compile: kj/async-unix.c++
/ekam-provider/canonical/kj/async-unix.c++: In member function ‘bool kj::UnixEventPort::doEpollWait(int)’:
/ekam-provider/canonical/kj/async-unix.c++:624:31: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare]
624 | if (siginfo.ssi_signo >= SIGRTMIN) {
| ^
[RUNNING] compile: kj/async-unix-xthread-test.c++
[DONE ] compile: kj/async-unix-xthread-test.c++
[RUNNING] link: kj/async-unix-xthread-test.o
[BLOCKED] link: kj/async-unix-xthread-test.o
[RUNNING] compile: kj/async-unix-test.c++
[DONE ] compile: kj/compat/http-socketpair-test.c++
[RUNNING] link: kj/compat/http-socketpair-test.o
[BLOCKED] link: kj/compat/http-socketpair-test.o
[RUNNING] compile: kj/async-test.c++
[DONE ] compile: kj/async-unix-test.c++
/ekam-provider/canonical/kj/async-unix-test.c++: In member function ‘virtual void kj::{anonymous}::TestCase594::run()’:
/ekam-provider/canonical/kj/async-unix-test.c++:623:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
623 | for (int i = 0; i < expected.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~
[RUNNING] link: kj/async-unix-test.o
[BLOCKED] link: kj/async-unix-test.o
[RUNNING] compile: kj/async-queue-test.c++
[DONE ] compile: kj/async-queue-test.c++
[RUNNING] link: kj/async-queue-test.o
[BLOCKED] link: kj/async-queue-test.o
[RUNNING] compile: kj/async-io.c++
[DONE ] compile: kj/async-test.c++
/ekam-provider/canonical/kj/async-test.c++: In lambda function:
/ekam-provider/canonical/kj/async-test.c++:748:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
748 | for (int i = 0; i < stackSize / sizeof(void*); i++) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
[RUNNING] link: kj/async-test.o
[BLOCKED] link: kj/async-test.o
[RUNNING] compile: kj/async-io-win32.c++
[DONE ] compile: kj/async-io-win32.c++
[RUNNING] compile: kj/async-io-unix.c++
[DONE ] compile: kj/async-io.c++
[RUNNING] compile: kj/async-io-test.c++
[DONE ] compile: kj/async-io-unix.c++
/ekam-provider/canonical/kj/async-io-unix.c++: In member function ‘virtual kj::Promise<void> kj::{anonymous}::AsyncStreamFd::write(const void*, size_t)’:
/ekam-provider/canonical/kj/async-io-unix.c++:193:18: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
193 | } else if (n == size) {
| ~~^~~~~~~
/ekam-provider/canonical/kj/async-io-unix.c++: In member function ‘kj::Promise<void> kj::{anonymous}::AsyncStreamFd::writeInternal(kj::ArrayPtr<const unsigned char>, kj::ArrayPtr<const kj::ArrayPtr<const unsigned char> >, kj::ArrayPtr<const int>)’:
/ekam-provider/canonical/kj/async-io-unix.c++:609:13: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
609 | if (n < firstPiece.size()) {
| ~~^~~~~~~~~~~~~~~~~~~
[RUNNING] compile: kj/async-coroutine-test.c++
[DONE ] compile: kj/async-coroutine-test.c++
[RUNNING] compile: kj/array.c++
[DONE ] compile: kj/array.c++
[RUNNING] compile: kj/array-test.c++
[DONE ] compile: kj/array-test.c++
[RUNNING] link: kj/array-test.o
[BLOCKED] link: kj/array-test.o
[RUNNING] compile: kj/arena.c++
[DONE ] compile: kj/arena.c++
/ekam-provider/canonical/kj/arena.c++: In member function ‘void* kj::Arena::allocateBytesInternal(size_t, kj::uint)’:
/ekam-provider/canonical/kj/arena.c++:115:44: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘long int’ [-Wsign-compare]
115 | if (amount + (alignedPos - chunk->pos) <= chunk->end - chunk->pos) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
[RUNNING] compile: kj/arena-test.c++
[DONE ] compile: kj/arena-test.c++
[RUNNING] link: kj/arena-test.o
[BLOCKED] link: kj/arena-test.o
[RUNNING] compile: ekam/initNetworkDashboardStub.cpp
[DONE ] compile: ekam/initNetworkDashboardStub.cpp
[RUNNING] compile: ekam/ekam.cpp
[BLOCKED] compile: kj/async-io-test.c++
[RUNNING] compile: ekam/ekam-client.cpp
[BLOCKED] compile: ekam/ekam-client.cpp
[RUNNING] compile: ekam/Tag.cpp
[DONE ] compile: ekam/Tag.cpp
[RUNNING] compile: ekam/SimpleDashboard.cpp
[DONE ] compile: ekam/ekam.cpp
[RUNNING] link: ekam/ekam.o
[DONE ] compile: ekam/SimpleDashboard.cpp
[BLOCKED] link: ekam/ekam.o
[RUNNING] compile: ekam/ProtoDashboard.cpp
[RUNNING] compile: ekam/MuxDashboard.cpp
[BLOCKED] compile: ekam/ProtoDashboard.cpp
[RUNNING] compile: ekam/ExecPluginActionFactory.cpp
[DONE ] compile: ekam/MuxDashboard.cpp
[RUNNING] compile: ekam/Driver.cpp
[DONE ] compile: ekam/ExecPluginActionFactory.cpp
[RUNNING] compile: ekam/Dashboard.cpp
[DONE ] compile: ekam/Dashboard.cpp
[RUNNING] compile: ekam/CppActionFactory.cpp
[DONE ] compile: ekam/CppActionFactory.cpp
[RUNNING] compile: ekam/ConsoleDashboard.cpp
[DONE ] compile: ekam/Driver.cpp
[RUNNING] compile: ekam/ActionUtil.cpp
[DONE ] compile: ekam/ConsoleDashboard.cpp
[RUNNING] compile: ekam/Action.cpp
[DONE ] compile: ekam/Action.cpp
[RUNNING] compile: base/sha256.cpp
[DONE ] compile: ekam/ActionUtil.cpp
[RUNNING] compile: base/Table_test.cpp
[DONE ] compile: base/sha256.cpp
[RUNNING] compile: base/Promise_test.cpp
[DONE ] compile: base/Table_test.cpp
[RUNNING] link: base/Table_test.o
[DONE ] link: base/Table_test.o
[RUNNING] test: base/Table_test
[PASSED ] test: base/Table_test
[RUNNING] compile: base/Promise.cpp
[DONE ] compile: base/Promise.cpp
[RUNNING] compile: base/OwnedPtr.cpp
[DONE ] compile: base/OwnedPtr.cpp
[RUNNING] compile: base/Hash.cpp
[DONE ] compile: base/Hash.cpp
[RUNNING] compile: base/Debug.cpp
[DONE ] compile: base/Debug.cpp
[RUNNING] compile: ekam/ekam-langserve.c++
[BLOCKED] compile: ekam/ekam-langserve.c++
[RUNNING] compile: capnp/test-util.c++
[BLOCKED] compile: capnp/test-util.c++
[RUNNING] compile: capnp/stringify.c++
[DONE ] compile: base/Promise_test.cpp
[RUNNING] link: base/Promise_test.o
[BLOCKED] link: base/Promise_test.o
[RUNNING] compile: capnp/stringify-test.c++
[BLOCKED] compile: capnp/stringify-test.c++
[RUNNING] compile: capnp/stream.capnp.c++
[DONE ] compile: capnp/stream.capnp.c++
[RUNNING] compile: capnp/serialize.c++
[BLOCKED] compile: capnp/stringify.c++
[RUNNING] compile: capnp/serialize-text.c++
[DONE ] compile: capnp/serialize.c++
[RUNNING] compile: capnp/serialize-text-test.c++
[BLOCKED] compile: capnp/serialize-text-test.c++
[RUNNING] compile: capnp/serialize-test.c++
[BLOCKED] compile: capnp/serialize-test.c++
[RUNNING] compile: capnp/serialize-packed.c++
[DONE ] compile: capnp/serialize-text.c++
[RUNNING] compile: capnp/serialize-packed-test.c++
[BLOCKED] compile: capnp/serialize-packed-test.c++
[RUNNING] compile: capnp/serialize-async.c++
[DONE ] compile: capnp/serialize-packed.c++
[RUNNING] compile: capnp/serialize-async-test.c++
[BLOCKED] compile: capnp/serialize-async-test.c++
[RUNNING] compile: capnp/schema.capnp.c++
[DONE ] compile: capnp/schema.capnp.c++
[RUNNING] compile: capnp/schema.c++
[DONE ] compile: capnp/schema.c++
In member function ‘capnp::Type capnp::Schema::BrandArgumentList::operator[](capnp::uint) const’,
inlined from ‘capnp::Type capnp::Schema::BrandArgumentList::operator[](capnp::uint) const’ at /ekam-provider/canonical/capnp/schema.c++:404:6:
/ekam-provider/canonical/capnp/schema.c++:431:12: warning: ‘*(short unsigned int*)((char*)&result + offsetof(capnp::Type, capnp::Type::<unnamed>))’ may be used uninitialized [-Wmaybe-uninitialized]
431 | result = Type(static_cast<schema::Type::Which>(binding.which), binding.schema);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/ekam-provider/canonical/capnp/schema.c++: In member function ‘capnp::Type capnp::Schema::BrandArgumentList::operator[](capnp::uint) const’:
/ekam-provider/canonical/capnp/schema.c++:417:8: note: ‘result’ declared here
417 | Type result;
| ^~~~~~
[RUNNING] compile: capnp/schema-parser.c++
[DONE ] compile: capnp/serialize-async.c++
[RUNNING] compile: capnp/schema-test.c++
[BLOCKED] compile: capnp/schema-test.c++
[RUNNING] compile: capnp/schema-parser-test.c++
[BLOCKED] compile: capnp/schema-parser-test.c++
[RUNNING] compile: capnp/schema-loader.c++
[DONE ] compile: capnp/schema-parser.c++
[RUNNING] compile: capnp/schema-loader-test.c++
[BLOCKED] compile: capnp/schema-loader-test.c++
[RUNNING] compile: capnp/rpc.capnp.c++
[DONE ] compile: capnp/rpc.capnp.c++
[RUNNING] compile: capnp/rpc.c++
[DONE ] compile: capnp/schema-loader.c++
[RUNNING] compile: capnp/rpc-twoparty.capnp.c++
[DONE ] compile: capnp/rpc-twoparty.capnp.c++
[RUNNING] compile: capnp/rpc-twoparty.c++
[DONE ] compile: capnp/rpc-twoparty.c++
[RUNNING] compile: capnp/rpc-twoparty-test.c++
[BLOCKED] compile: capnp/rpc-twoparty-test.c++
[RUNNING] compile: capnp/rpc-test.c++
[BLOCKED] compile: capnp/rpc-test.c++
[RUNNING] compile: capnp/reconnect.c++
[DONE ] compile: capnp/reconnect.c++
[RUNNING] compile: capnp/reconnect-test.c++
[BLOCKED] compile: capnp/reconnect-test.c++
[RUNNING] compile: capnp/persistent.capnp.c++
[BLOCKED] compile: capnp/persistent.capnp.c++
[RUNNING] compile: capnp/orphan-test.c++
[BLOCKED] compile: capnp/orphan-test.c++
[RUNNING] compile: capnp/message.c++
[DONE ] compile: capnp/message.c++
[RUNNING] compile: capnp/message-test.c++
[BLOCKED] compile: capnp/message-test.c++
[RUNNING] compile: capnp/membrane-test.c++
[BLOCKED] compile: capnp/membrane-test.c++
[RUNNING] compile: capnp/membrane.c++
[DONE ] compile: capnp/membrane.c++
[RUNNING] compile: capnp/llvm-fuzzer-testcase.c++
[BLOCKED] compile: capnp/llvm-fuzzer-testcase.c++
[RUNNING] compile: capnp/list.c++
[DONE ] compile: capnp/list.c++
[RUNNING] compile: capnp/layout.c++
[DONE ] compile: capnp/rpc.c++
[RUNNING] compile: capnp/layout-test.c++
[DONE ] compile: capnp/layout-test.c++
[RUNNING] link: capnp/layout-test.o
[BLOCKED] link: capnp/layout-test.o
[RUNNING] compile: capnp/fuzz-test.c++
[BLOCKED] compile: capnp/fuzz-test.c++
[RUNNING] compile: capnp/ez-rpc.c++
[DONE ] compile: capnp/ez-rpc.c++
[RUNNING] compile: capnp/ez-rpc-test.c++
[BLOCKED] compile: capnp/ez-rpc-test.c++
[RUNNING] compile: capnp/endian-test.c++
[DONE ] compile: capnp/layout.c++
[RUNNING] compile: capnp/endian-reverse-test.c++
[DONE ] compile: capnp/endian-test.c++
[RUNNING] link: capnp/endian-test.o
[BLOCKED] link: capnp/endian-test.o
[RUNNING] compile: capnp/endian-fallback-test.c++
[DONE ] compile: capnp/endian-reverse-test.c++
[RUNNING] link: capnp/endian-reverse-test.o
[BLOCKED] link: capnp/endian-reverse-test.o
[RUNNING] compile: capnp/encoding-test.c++
[BLOCKED] compile: capnp/encoding-test.c++
[RUNNING] compile: capnp/dynamic.c++
[DONE ] compile: capnp/endian-fallback-test.c++
[RUNNING] link: capnp/endian-fallback-test.o
[BLOCKED] link: capnp/endian-fallback-test.o
[RUNNING] compile: capnp/dynamic-test.c++
[BLOCKED] compile: capnp/dynamic-test.c++
[RUNNING] compile: capnp/dynamic-capability.c++
[DONE ] compile: capnp/dynamic-capability.c++
[RUNNING] compile: capnp/compiler/type-id.c++
[DONE ] compile: capnp/compiler/type-id.c++
[RUNNING] compile: capnp/compiler/type-id-test.c++
[DONE ] compile: capnp/compiler/type-id-test.c++
[RUNNING] link: capnp/compiler/type-id-test.o
[BLOCKED] link: capnp/compiler/type-id-test.o
[RUNNING] compile: capnp/compiler/parser.c++
[DONE ] compile: capnp/dynamic.c++
[RUNNING] compile: capnp/compiler/node-translator.c++
[DONE ] compile: capnp/compiler/parser.c++
[RUNNING] compile: capnp/compiler/module-loader.c++
[DONE ] compile: capnp/compiler/node-translator.c++
[RUNNING] compile: capnp/compiler/lexer.capnp.c++
[DONE ] compile: capnp/compiler/lexer.capnp.c++
[RUNNING] compile: capnp/compiler/lexer-test.c++
[DONE ] compile: capnp/compiler/lexer-test.c++
[RUNNING] link: capnp/compiler/lexer-test.o
[BLOCKED] link: capnp/compiler/lexer-test.o
[RUNNING] compile: capnp/compiler/lexer.c++
[DONE ] compile: capnp/compiler/module-loader.c++
[RUNNING] compile: capnp/compiler/grammar.capnp.c++
[DONE ] compile: capnp/compiler/grammar.capnp.c++
[RUNNING] compile: capnp/compiler/generics.c++
[DONE ] compile: capnp/compiler/generics.c++
[RUNNING] compile: capnp/compiler/evolution-test.c++
[DONE ] compile: capnp/compiler/lexer.c++
[RUNNING] compile: capnp/compiler/error-reporter.c++
[DONE ] compile: capnp/compiler/error-reporter.c++
[RUNNING] compile: capnp/compiler/compiler.c++
[DONE ] compile: capnp/compiler/evolution-test.c++
[RUNNING] link: capnp/compiler/evolution-test.o
[BLOCKED] link: capnp/compiler/evolution-test.o
[RUNNING] compile: capnp/compiler/capnpc-capnp.c++
[DONE ] compile: capnp/compiler/compiler.c++
[RUNNING] compile: capnp/compiler/capnpc-c++.c++
[DONE ] compile: capnp/compiler/capnpc-capnp.c++
[RUNNING] link: capnp/compiler/capnpc-capnp.o
[BLOCKED] link: capnp/compiler/capnpc-capnp.o
[RUNNING] compile: capnp/compiler/capnp.c++
[DONE ] compile: capnp/compiler/capnp.c++
[RUNNING] link: capnp/compiler/capnp.o
[BLOCKED] link: capnp/compiler/capnp.o
[RUNNING] compile: capnp/compat/websocket-rpc.c++
[DONE ] compile: capnp/compat/websocket-rpc.c++
[RUNNING] compile: capnp/compat/websocket-rpc-test.c++
[BLOCKED] compile: capnp/compat/websocket-rpc-test.c++
[RUNNING] compile: capnp/compat/json.capnp.c++
[DONE ] compile: capnp/compat/json.capnp.c++
[RUNNING] compile: capnp/compat/json.c++
[DONE ] compile: capnp/compat/json.c++
[RUNNING] compile: capnp/compat/json-test.c++
[BLOCKED] compile: capnp/compat/json-test.c++
[RUNNING] compile: capnp/compat/json-rpc.c++
[BLOCKED] compile: capnp/compat/json-rpc.c++
[RUNNING] compile: capnp/compat/json-rpc-test.c++
[BLOCKED] compile: capnp/compat/json-rpc-test.c++
[RUNNING] compile: capnp/compat/http-over-capnp.c++
[BLOCKED] compile: capnp/compat/http-over-capnp.c++
[RUNNING] compile: capnp/compat/http-over-capnp-test.c++
[BLOCKED] compile: capnp/compat/http-over-capnp-test.c++
[RUNNING] compile: capnp/compat/byte-stream.c++
[BLOCKED] compile: capnp/compat/byte-stream.c++
[RUNNING] compile: capnp/common-test.c++
[BLOCKED] compile: capnp/common-test.c++
[RUNNING] compile: capnp/compat/byte-stream-test.c++
[BLOCKED] compile: capnp/compat/byte-stream-test.c++
[RUNNING] compile: capnp/capability.c++
[DONE ] compile: capnp/compiler/capnpc-c++.c++
[RUNNING] link: capnp/compiler/capnpc-c++.o
[BLOCKED] link: capnp/compiler/capnpc-c++.o
[RUNNING] compile: capnp/capability-test.c++
[BLOCKED] compile: capnp/capability-test.c++
[RUNNING] compile: capnp/canonicalize-test.c++
[BLOCKED] compile: capnp/canonicalize-test.c++
[RUNNING] compile: capnp/c++.capnp.c++
[DONE ] compile: capnp/c++.capnp.c++
[RUNNING] compile: capnp/blob.c++
[DONE ] compile: capnp/blob.c++
[RUNNING] compile: capnp/blob-test.c++
[BLOCKED] compile: capnp/blob-test.c++
[RUNNING] compile: capnp/arena.c++
[DONE ] compile: capnp/arena.c++
[RUNNING] compile: capnp/any.c++
[DONE ] compile: capnp/capability.c++
[RUNNING] compile: capnp/any-test.c++
[BLOCKED] compile: capnp/any-test.c++
[RUNNING] compile: capnp/afl-testcase.c++
[BLOCKED] compile: capnp/afl-testcase.c++
[RUNNING] capnpc: ekam/langserve.capnp
[BLOCKED] capnpc: ekam/langserve.capnp
[RUNNING] capnpc: ekam/dashboard.capnp
[BLOCKED] capnpc: ekam/dashboard.capnp
[RUNNING] capnpc: capnp/test.capnp
[BLOCKED] capnpc: capnp/test.capnp
[RUNNING] capnpc: capnp/test-import2.capnp
[BLOCKED] capnpc: capnp/test-import2.capnp
[RUNNING] capnpc: capnp/test-import.capnp
[BLOCKED] capnpc: capnp/test-import.capnp
[RUNNING] capnpc: capnp/compat/json-test.capnp
[BLOCKED] capnpc: capnp/compat/json-test.capnp
[RUNNING] capnpc: capnp/compat/json-rpc.capnp
[BLOCKED] capnpc: capnp/compat/json-rpc.capnp
[RUNNING] capnpc: capnp/compat/http-over-capnp.capnp
[BLOCKED] capnpc: capnp/compat/http-over-capnp.capnp
[RUNNING] capnpc: capnp/compat/byte-stream.capnp
[BLOCKED] capnpc: capnp/compat/byte-stream.capnp
[RUNNING] learn: capnp/bootstrap-test.ekam-rule
[BLOCKED] learn: capnp/bootstrap-test.ekam-rule
[RUNNING] compile: kj/hash.c++
[DONE ] compile: kj/hash.c++
[RUNNING] compile: kj/io-test.c++
[DONE ] compile: capnp/any.c++
[RUNNING] compile: kj/list-test.c++
[DONE ] compile: kj/list-test.c++
[RUNNING] link: kj/list-test.o
[BLOCKED] link: kj/list-test.o
[RUNNING] compile: kj/memory-test.c++
[DONE ] compile: kj/io-test.c++
[RUNNING] link: kj/io-test.o
[BLOCKED] link: kj/io-test.o
[RUNNING] compile: kj/main.c++
[DONE ] compile: kj/memory-test.c++
[RUNNING] link: kj/memory-test.o
[BLOCKED] link: kj/memory-test.o
[RUNNING] compile: kj/list.c++
[DONE ] compile: kj/list.c++
[RUNNING] compile: kj/io.c++
[BLOCKED] compile: kj/io.c++
[RUNNING] compile: kj/function-test.c++
[DONE ] compile: kj/function-test.c++
[RUNNING] link: kj/function-test.o
[BLOCKED] link: kj/function-test.o
[RUNNING] compile: kj/mutex.c++
[DONE ] compile: kj/mutex.c++
[RUNNING] compile: kj/mutex-test.c++
[DONE ] compile: kj/main.c++
[RUNNING] compile: kj/one-of-test.c++
[DONE ] compile: kj/one-of-test.c++
[RUNNING] link: kj/one-of-test.o
[BLOCKED] link: kj/one-of-test.o
[RUNNING] compile: kj/parse/char-test.c++
[DONE ] compile: kj/mutex-test.c++
/ekam-provider/canonical/kj/mutex-test.c++: In lambda function:
/ekam-provider/canonical/kj/mutex-test.c++:205:59: warning: comparison of integer expressions of different signedness: ‘const uint’ {aka ‘const unsigned int’} and ‘const int’ [-Wsign-compare]
205 | uint m = value.when([i](const uint& n) { return n == i; },
| ~~^~~~
/ekam-provider/canonical/kj/mutex-test.c++: In lambda function:
/ekam-provider/canonical/kj/mutex-test.c++:302:59: warning: comparison of integer expressions of different signedness: ‘const uint’ {aka ‘const unsigned int’} and ‘const int’ [-Wsign-compare]
302 | uint m = value.when([i](const uint& n) { return n == i; },
| ~~^~~~
[RUNNING] link: kj/mutex-test.o
[BLOCKED] link: kj/mutex-test.o
[RUNNING] compile: kj/parse/char.c++
[DONE ] compile: kj/parse/char.c++
[RUNNING] compile: kj/parse/common-test.c++
[DONE ] compile: kj/parse/char-test.c++
[RUNNING] link: kj/parse/char-test.o
[BLOCKED] link: kj/parse/char-test.o
[RUNNING] compile: kj/refcount-test.c++
[DONE ] compile: kj/refcount-test.c++
[RUNNING] link: kj/refcount-test.o
[BLOCKED] link: kj/refcount-test.o
[RUNNING] compile: kj/source-location.c++
[DONE ] compile: kj/source-location.c++
[RUNNING] compile: kj/string-tree-test.c++
[DONE ] compile: kj/parse/common-test.c++
[RUNNING] link: kj/parse/common-test.o
[BLOCKED] link: kj/parse/common-test.o
[RUNNING] compile: kj/string-tree.c++
[DONE ] compile: kj/string-tree.c++
[RUNNING] compile: kj/std/iostream-test.c++
[DONE ] compile: kj/string-tree-test.c++
[RUNNING] link: kj/string-tree-test.o
[BLOCKED] link: kj/string-tree-test.o
[RUNNING] compile: kj/string-test.c++
[DONE ] compile: kj/std/iostream-test.c++
[RUNNING] link: kj/std/iostream-test.o
[BLOCKED] link: kj/std/iostream-test.o
[RUNNING] compile: kj/refcount.c++
[DONE ] compile: kj/refcount.c++
[RUNNING] compile: kj/table-test.c++
[DONE ] compile: kj/string-test.c++
[RUNNING] link: kj/string-test.o
[BLOCKED] link: kj/string-test.o
[RUNNING] compile: kj/map-test.c++
[DONE ] compile: kj/map-test.c++
[RUNNING] link: kj/map-test.o
[BLOCKED] link: kj/map-test.o
[RUNNING] compile: kj/test-test.c++
[DONE ] compile: kj/test-test.c++
[RUNNING] link: kj/test-test.o
[BLOCKED] link: kj/test-test.o
[RUNNING] compile: kj/test-helpers.c++
[DONE ] compile: kj/table-test.c++
[RUNNING] link: kj/table-test.o
[BLOCKED] link: kj/table-test.o
[RUNNING] compile: kj/thread-test.c++
[BLOCKED] compile: kj/test-helpers.c++
[RUNNING] compile: kj/time-test.c++
[DONE ] compile: kj/thread-test.c++
[RUNNING] link: kj/thread-test.o
[BLOCKED] link: kj/thread-test.o
[RUNNING] compile: kj/table.c++
[DONE ] compile: kj/time-test.c++
[RUNNING] link: kj/time-test.o
[BLOCKED] link: kj/time-test.o
[RUNNING] compile: kj/units-test.c++
[BLOCKED] compile: kj/table.c++
[RUNNING] compile: kj/units.c++
[DONE ] compile: kj/units.c++
[RUNNING] compile: kj/timer.c++
[DONE ] compile: kj/timer.c++
[RUNNING] compile: kj/time.c++
[DONE ] compile: kj/time.c++
[RUNNING] compile: kj/threadlocal-test.c++
[DONE ] compile: kj/units-test.c++
[RUNNING] link: kj/units-test.o
[BLOCKED] link: kj/units-test.o
[RUNNING] compile: kj/thread.c++
[DONE ] compile: kj/threadlocal-test.c++
[RUNNING] link: kj/threadlocal-test.o
[BLOCKED] link: kj/threadlocal-test.o
[RUNNING] compile: kj/test.c++
[DONE ] compile: kj/thread.c++
/ekam-provider/canonical/kj/thread.c++: In destructor ‘kj::Thread::~Thread()’:
/ekam-provider/canonical/kj/thread.c++:82:39: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
82 | int pthreadResult = pthread_join(*reinterpret_cast<pthread_t*>(&threadId), nullptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/ekam-provider/canonical/kj/thread.c++: In member function ‘void kj::Thread::sendSignal(int)’:
/ekam-provider/canonical/kj/thread.c++:96:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
96 | int pthreadResult = pthread_kill(*reinterpret_cast<pthread_t*>(&threadId), signo);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/ekam-provider/canonical/kj/thread.c++: In member function ‘void kj::Thread::detach()’:
/ekam-provider/canonical/kj/thread.c++:103:39: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
103 | int pthreadResult = pthread_detach(*reinterpret_cast<pthread_t*>(&threadId));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[RUNNING] compile: kj/string.c++
[DONE ] compile: kj/test.c++
/ekam-provider/canonical/kj/test.c++: In member function ‘void kj::_::GlobFilter::applyState(char, int)’:
/ekam-provider/canonical/kj/test.c++:123:13: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
123 | if (state < pattern.size()) {
| ~~~~~~^~~~~~~~~~~~~~~~
[RUNNING] link: kj/test.o
[BLOCKED] link: kj/test.o
[RUNNING] compile: kj/tuple-test.c++
[DONE ] compile: kj/string.c++
[RUNNING] compile: kj/memory.c++
[DONE ] compile: kj/memory.c++
[RUNNING] compile: os/DiskFile.cpp
[DONE ] compile: kj/tuple-test.c++
[RUNNING] link: kj/tuple-test.o
[BLOCKED] link: kj/tuple-test.o
[RUNNING] compile: os/EpollEventManager.cpp
[DONE ] compile: os/DiskFile.cpp
[RUNNING] compile: os/EventGroup.cpp
[DONE ] compile: os/EventGroup.cpp
[RUNNING] compile: os/EventManager.cpp
[DONE ] compile: os/EventManager.cpp
[RUNNING] compile: os/File.cpp
[DONE ] compile: os/File.cpp
[RUNNING] compile: os/OsHandle.cpp
[DONE ] compile: os/EpollEventManager.cpp
[RUNNING] compile: os/ByteStream.cpp
[DONE ] compile: os/OsHandle.cpp
[RUNNING] compile: os/Subprocess.cpp
[DONE ] compile: os/ByteStream.cpp
[RUNNING] link: ekam/ekam.o
[BLOCKED] link: ekam/ekam.o
[RUNNING] link: capnp/compiler/evolution-test.o
[BLOCKED] link: capnp/compiler/evolution-test.o
[RUNNING] link: capnp/compiler/capnp.o
[BLOCKED] link: capnp/compiler/capnp.o
[RUNNING] link: capnp/compiler/capnpc-c++.o
[BLOCKED] link: capnp/compiler/capnpc-c++.o
[RUNNING] link: capnp/compiler/capnpc-capnp.o
[BLOCKED] link: capnp/compiler/capnpc-capnp.o
[RUNNING] link: kj/threadlocal-test.o
[BLOCKED] link: kj/threadlocal-test.o
[RUNNING] link: kj/units-test.o
[BLOCKED] link: kj/units-test.o
[RUNNING] link: kj/time-test.o
[BLOCKED] link: kj/time-test.o
[RUNNING] link: kj/thread-test.o
[BLOCKED] link: kj/thread-test.o
[RUNNING] link: kj/table-test.o
[DONE ] compile: os/Subprocess.cpp
[RUNNING] link: kj/test-test.o
[BLOCKED] link: kj/table-test.o
[RUNNING] link: kj/map-test.o
[BLOCKED] link: kj/test-test.o
[RUNNING] link: kj/string-test.o
[BLOCKED] link: kj/map-test.o
[RUNNING] link: kj/std/iostream-test.o
[BLOCKED] link: kj/string-test.o
[RUNNING] link: kj/string-tree-test.o
[BLOCKED] link: kj/std/iostream-test.o
[RUNNING] link: kj/parse/common-test.o
[BLOCKED] link: kj/string-tree-test.o
[RUNNING] link: kj/refcount-test.o
[BLOCKED] link: kj/parse/common-test.o
[RUNNING] link: kj/parse/char-test.o
[BLOCKED] link: kj/refcount-test.o
[RUNNING] link: kj/mutex-test.o
[BLOCKED] link: kj/parse/char-test.o
[RUNNING] link: kj/one-of-test.o
[BLOCKED] link: kj/mutex-test.o
[RUNNING] link: kj/function-test.o
[BLOCKED] link: kj/one-of-test.o
[RUNNING] link: kj/memory-test.o
[BLOCKED] link: kj/function-test.o
[RUNNING] link: kj/io-test.o
[BLOCKED] link: kj/memory-test.o
[RUNNING] link: kj/list-test.o
[BLOCKED] link: kj/io-test.o
[RUNNING] link: capnp/compiler/lexer-test.o
[BLOCKED] link: kj/list-test.o
[RUNNING] link: capnp/compiler/type-id-test.o
[BLOCKED] link: capnp/compiler/lexer-test.o
[RUNNING] link: capnp/endian-fallback-test.o
[BLOCKED] link: capnp/compiler/type-id-test.o
[RUNNING] link: capnp/endian-reverse-test.o
[BLOCKED] link: capnp/endian-fallback-test.o
[RUNNING] link: capnp/endian-test.o
[BLOCKED] link: capnp/endian-test.o
[RUNNING] link: capnp/layout-test.o
[BLOCKED] link: capnp/endian-reverse-test.o
[RUNNING] link: base/Promise_test.o
[BLOCKED] link: capnp/layout-test.o
[RUNNING] link: kj/arena-test.o
[BLOCKED] link: base/Promise_test.o
[RUNNING] link: kj/array-test.o
[BLOCKED] link: kj/array-test.o
[RUNNING] link: kj/async-test.o
[BLOCKED] link: kj/arena-test.o
[RUNNING] link: kj/async-queue-test.o
[BLOCKED] link: kj/async-test.o
[RUNNING] link: kj/async-unix-test.o
[BLOCKED] link: kj/async-queue-test.o
[RUNNING] link: kj/compat/http-socketpair-test.o
[BLOCKED] link: kj/async-unix-test.o
[RUNNING] link: kj/async-unix-xthread-test.o
[BLOCKED] link: kj/async-unix-xthread-test.o
[RUNNING] link: kj/async-xthread-test.o
[BLOCKED] link: kj/compat/http-socketpair-test.o
[RUNNING] link: kj/common-test.o
[BLOCKED] link: kj/async-xthread-test.o
[RUNNING] link: kj/compat/http-test.o
[BLOCKED] link: kj/common-test.o
[RUNNING] link: kj/compat/readiness-io-test.o
[BLOCKED] link: kj/compat/readiness-io-test.o
[RUNNING] link: kj/compat/url-test.o
[BLOCKED] link: kj/compat/http-test.o
[RUNNING] link: kj/debug-test.o
[BLOCKED] link: kj/compat/url-test.o
[RUNNING] link: kj/filesystem-disk-generic-test.o
[BLOCKED] link: kj/debug-test.o
[RUNNING] link: kj/encoding-test.o
[BLOCKED] link: kj/filesystem-disk-generic-test.o
[RUNNING] link: kj/exception-test.o
[BLOCKED] link: kj/encoding-test.o
[RUNNING] link: kj/filesystem-disk-old-kernel-test.o
[BLOCKED] link: kj/exception-test.o
[RUNNING] link: kj/filesystem-disk-test.o
[BLOCKED] link: kj/filesystem-disk-old-kernel-test.o
[RUNNING] link: kj/filesystem-test.o
[BLOCKED] link: kj/filesystem-disk-test.o
[RUNNING] link: kj/test.o
[BLOCKED] link: kj/filesystem-test.o
[RUNNING] link: ekam/ekam.o
[BLOCKED] link: kj/test.o
[DONE ] link: ekam/ekam.o
[RUNNING] install: ekam/ekam.ekam-manifest
[RUNNING] compile: ekam/ekam-langserve.c++
[BLOCKED] install: ekam/ekam.ekam-manifest
[RUNNING] compile: ekam/MuxDashboard.cpp
[BLOCKED] compile: ekam/ekam-langserve.c++
[RUNNING] compile: ekam/ProtoDashboard.cpp
[BLOCKED] compile: ekam/ProtoDashboard.cpp
[RUNNING] compile: ekam/ekam-client.cpp
[BLOCKED] compile: ekam/ekam-client.cpp
[DONE ] compile: ekam/MuxDashboard.cpp
[FAILED ] compile: ekam/ekam-client.cpp
/ekam-provider/canonical/ekam/ekam-client.cpp:17:10: fatal error: dashboard.capnp.h: No such file or directory
17 | #include "dashboard.capnp.h"
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
[FAILED ] compile: ekam/ProtoDashboard.cpp
/ekam-provider/canonical/ekam/ProtoDashboard.cpp:25:10: fatal error: dashboard.capnp.h: No such file or directory
25 | #include "dashboard.capnp.h"
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
[FAILED ] link: kj/test.o
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/exception-test.o
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::testStackTrace()':
exception-test.c++:(.text+0xa6): undefined reference to `kj::getStackTrace()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::RunnableImpl<kj::_::(anonymous namespace)::TestCase136::run()::{lambda()#1}>::run()':
exception-test.c++:(.text+0xc8): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::RunnableImpl<kj::_::(anonymous namespace)::TestCase107::run()::{lambda()#1}>::run()':
exception-test.c++:(.text+0x1fa): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: exception-test.c++:(.text+0x204): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text+0x220): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::RunnableImpl<kj::_::(anonymous namespace)::TestCase107::run()::{lambda()#2}>::run()':
exception-test.c++:(.text+0x23e): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: exception-test.c++:(.text+0x279): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text+0x292): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase136::run()':
exception-test.c++:(.text+0x5a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: exception-test.c++:(.text+0x7c2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: exception-test.c++:(.text+0x7f1): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: exception-test.c++:(.text+0x821): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase142::run()':
exception-test.c++:(.text+0x946): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: exception-test.c++:(.text+0x950): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: exception-test.c++:(.text+0x994): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text+0x9a7): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text+0x9fe): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: exception-test.c++:(.text+0xa08): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase76::run()':
exception-test.c++:(.text+0xbd8): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: exception-test.c++:(.text+0xc4a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase64::run()':
exception-test.c++:(.text+0xe68): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: exception-test.c++:(.text+0xeda): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase107::run()':
exception-test.c++:(.text+0x10da): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: exception-test.c++:(.text+0x1166): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: exception-test.c++:(.text+0x11cf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: exception-test.c++:(.text+0x1453): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: exception-test.c++:(.text+0x146c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: exception-test.c++:(.text+0x170f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase41::run()':
exception-test.c++:(.text+0x17dd): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: exception-test.c++:(.text+0x1865): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase32::run()':
exception-test.c++:(.text+0x1aff): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: exception-test.c++:(.text+0x1b8b): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase246::run()::{lambda(unsigned int, kj::ArrayPtr<unsigned long const>, kj::ArrayPtr<unsigned long const>)#1}::operator()(unsigned int, kj::ArrayPtr<unsigned long const>, kj::ArrayPtr<unsigned long const>) const [clone .constprop.0]':
exception-test.c++:(.text+0x1d22): undefined reference to `kj::computeRelativeTrace(kj::ArrayPtr<void* const>, kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::RunnableImpl<kj::_::(anonymous namespace)::TestCase107::run()::{lambda()#2}>::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0xa1): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0xba): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase136::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x175): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase142::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x18f): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0x1a2): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0x1f0): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0x203): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase76::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x2c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase64::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x37b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase107::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x3f3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase41::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x487): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `kj::_::(anonymous namespace)::TestCase212::run() [clone .cold]':
exception-test.c++:(.text.unlikely+0x595): undefined reference to `kj::InFlightExceptionIterator::InFlightExceptionIterator()'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0x5a5): undefined reference to `kj::InFlightExceptionIterator::next()'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0x5ef): undefined reference to `kj::InFlightExceptionIterator::next()'
/usr/bin/ld: exception-test.c++:(.text.unlikely+0x686): undefined reference to `kj::InFlightExceptionIterator::next()'
/usr/bin/ld: tmp/kj/exception-test.o: in function `void kj::_::Debug::log<char const (&) [94], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [94], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
exception-test.c++:(.text._ZN2kj1_5Debug3logIJRA94_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA94_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/encoding-test.o
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/filesystem-disk-generic-test.o
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation)':
mutex.c++:(.text+0x255): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: mutex.c++:(.text+0x268): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&)':
mutex.c++:(.text+0x3a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: mutex.c++:(.text+0x5fa): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: mutex.c++:(.text+0x834): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::wait(kj::_::Mutex::Predicate&, kj::Maybe<kj::Quantity<long, kj::_::NanosecondLabel> >, kj::NoopSourceLocation)':
mutex.c++:(.text+0xac5): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::HeapDisposer<kj::Exception>::disposeImpl(void*) const':
mutex.c++:(.text._ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv]+0xd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation) [clone .cold]':
mutex.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&) [clone .cold]':
mutex.c++:(.text.unlikely+0x68): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskReadableFile>::disposeImpl(void*) const':
filesystem-disk-generic-test.c++:(.text+0x1db): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskFile>::disposeImpl(void*) const':
filesystem-disk-generic-test.c++:(.text+0x22b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskReadableDirectory>::disposeImpl(void*) const':
filesystem-disk-generic-test.c++:(.text+0x27b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskDirectory>::disposeImpl(void*) const':
filesystem-disk-generic-test.c++:(.text+0x2cb): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x345): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x34e): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x581): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x58a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x5e6): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x5ef): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x656): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x65f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x678): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x6d7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x6e0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x6f8): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x753): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x75c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x775): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskAppendableFile>::disposeImpl(void*) const':
filesystem-disk-generic-test.c++:(.text+0x83b): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x844): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x85d): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskFilesystem>::disposeImpl(void*) const':
filesystem-disk-generic-test.c++:(.text+0x1ba0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x1bb1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskHandle::tryOpenSubdirInternal(kj::PathPtr) const':
filesystem-disk-generic-test.c++:(.text+0x2395): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskReadableFile::cloneFsNode() const':
filesystem-disk-generic-test.c++:(.text+0x4828): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::cloneFsNode() const':
filesystem-disk-generic-test.c++:(.text+0x4922): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:filesystem-disk-generic-test.c++:(.text+0x4a08): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskFilesystem::computeCurrentPath()':
filesystem-disk-generic-test.c++:(.text+0x8631): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x88f2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x8918): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::newDiskFilesystem()':
filesystem-disk-generic-test.c++:(.text+0x8f21): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x8f7a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::TestCase540::run()':
filesystem-disk-generic-test.c++:(.text+0xf49b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xf4c7): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xf5e5): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:filesystem-disk-generic-test.c++:(.text+0xf611): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::TestCase540::run()':
filesystem-disk-generic-test.c++:(.text+0xf6b4): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xf708): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xf94f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xf97b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xfa99): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0xfac5): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x1074d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x10780): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x107b0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x109b5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x109e8): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x10a18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::TestCase392::run()':
filesystem-disk-generic-test.c++:(.text+0x17fcf): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x17ff2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x1855e): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x18581): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x186ce): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:filesystem-disk-generic-test.c++:(.text+0x186f1): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::TestCase392::run()':
filesystem-disk-generic-test.c++:(.text+0x1879c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x199d0): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x19a02): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x1a5d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x1a60b): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text+0x1a63b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
filesystem-disk-generic-test.c++:(.text+0x305): undefined reference to `kj::FdOutputStream::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::write(void const*, unsigned long)':
filesystem-disk-generic-test.c++:(.text+0x315): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x36c): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
filesystem-disk-generic-test.c++:(.text+0x521): undefined reference to `kj::FdOutputStream::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
filesystem-disk-generic-test.c++:(.text+0x535): undefined reference to `kj::FdOutputStream::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::write(void const*, unsigned long)':
filesystem-disk-generic-test.c++:(.text+0x541): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::write(void const*, unsigned long)':
filesystem-disk-generic-test.c++:(.text+0x555): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x5a9): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile()':
filesystem-disk-generic-test.c++:(.text+0x60e): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x5d): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x75): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x86): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x9f): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0xb0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0xc8): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0xd9): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0xf2): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x110): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x12b): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `non-virtual thunk to kj::(anonymous namespace)::DiskAppendableFile::~DiskAppendableFile() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x149): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x162): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskAppendableFile>::disposeImpl(void*) const [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x197): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1b0): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::DiskFilesystem>::disposeImpl(void*) const [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x355): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskHandle::tryOpenSubdirInternal(kj::PathPtr) const [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x3cf): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x3da): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskReadableFile::cloneFsNode() const [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x510): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x51c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:filesystem-disk-generic-test.c++:(.text.unlikely+0x550): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::DiskFilesystem::computeCurrentPath() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0xe6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::newDiskFilesystem() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0xef1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0xefb): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0xf10): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0xf1b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::TestCase540::run() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x1cbe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1ceb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1d79): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1d92): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1dd5): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1dea): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x1e2f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:filesystem-disk-generic-test.c++:(.text.unlikely+0x1e44): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `kj::(anonymous namespace)::TestCase392::run() [clone .cold]':
filesystem-disk-generic-test.c++:(.text.unlikely+0x2be9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x2fd4): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x2fe9): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x3311): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x332a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: filesystem-disk-generic-test.c++:(.text.unlikely+0x3372): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:filesystem-disk-generic-test.c++:(.text.unlikely+0x338b): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `void kj::_::Debug::log<char const (&) [39], char const*&, kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [39], char const*&, kj::Exception&)':
filesystem-disk-generic-test.c++:(.text._ZN2kj1_5Debug3logIJRA39_KcRPS3_RNS_9ExceptionEEEEvS6_iNS_11LogSeverityES6_DpOT_[_ZN2kj1_5Debug3logIJRA39_KcRPS3_RNS_9ExceptionEEEEvS6_iNS_11LogSeverityES6_DpOT_]+0x79): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o: in function `void kj::_::Debug::log<char const (&) [89], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [89], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
filesystem-disk-generic-test.c++:(.text._ZN2kj1_5Debug3logIJRA89_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA89_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9f): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:(.rodata+0x3c0): undefined reference to `typeinfo for kj::FdOutputStream'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:(.rodata._ZTIN2kj14AppendableFileE[_ZTIN2kj14AppendableFileE]+0x28): undefined reference to `typeinfo for kj::OutputStream'
/usr/bin/ld: tmp/kj/filesystem-disk-generic-test.o:(.rodata._ZTVN2kj14AppendableFileE[_ZTVN2kj14AppendableFileE]+0x78): undefined reference to `kj::OutputStream::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)'
/usr/bin/ld: tmp/kj/filesystem.o: in function `kj::(anonymous namespace)::AppendableFileImpl::~AppendableFileImpl()':
filesystem.c++:(.text+0x93f): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem.o: in function `non-virtual thunk to kj::(anonymous namespace)::AppendableFileImpl::~AppendableFileImpl()':
filesystem.c++:(.text+0x9bf): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::AppendableFileImpl>::disposeImpl(void*) const':
filesystem.c++:(.text+0xaa4): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem.o: in function `non-virtual thunk to kj::(anonymous namespace)::AppendableFileImpl::~AppendableFileImpl()':
filesystem.c++:(.text+0x875): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem.o: in function `kj::(anonymous namespace)::AppendableFileImpl::~AppendableFileImpl()':
filesystem.c++:(.text+0x8e3): undefined reference to `kj::OutputStream::~OutputStream()'
/usr/bin/ld: tmp/kj/filesystem.o:filesystem.c++:(.text.unlikely+0xfe): more undefined references to `kj::OutputStream::~OutputStream()' follow
/usr/bin/ld: tmp/kj/filesystem.o:(.rodata+0x9b0): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/filesystem.o:(.rodata+0x9b8): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/filesystem.o:(.rodata+0xa48): undefined reference to `kj::OutputStream::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/debug-test.o
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::fileLine(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int)':
debug-test.c++:(.text+0x3ae): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::MockExceptionCallback::~MockExceptionCallback()':
debug-test.c++:(.text+0x50f): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::MockExceptionCallback::onFatalException(kj::Exception&&)':
debug-test.c++:(.text+0x55a): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::MockExceptionCallback::onRecoverableException(kj::Exception&&)':
debug-test.c++:(.text+0x68e): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase471::run()':
debug-test.c++:(.text+0x15b8): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x1802): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x1a0c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x1c65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x1c83): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x1f32): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x213c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x2376): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x2394): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x25e2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x27ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x2aa0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x2abe): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x2e12): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x301c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x3278): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x3296): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x3562): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x376c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x39f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x3a26): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x3a88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x3d12): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x3f1c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x4151): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x4168): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug-test.o:debug-test.c++:(.text+0x4208): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase289::run()':
debug-test.c++:(.text+0x440d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: debug-test.c++:(.text+0x4551): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase420::run()':
debug-test.c++:(.text+0x47dc): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase364::run()':
debug-test.c++:(.text+0x49bb): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x4a37): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x4abd): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x4ba1): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x4fc7): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x50a9): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x54aa): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x5591): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x59fa): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x5ae1): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x5f68): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x6046): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase300::run()':
debug-test.c++:(.text+0x798c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x79b0): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: debug-test.c++:(.text+0x7d1e): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: debug-test.c++:(.text+0x7d42): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: debug-test.c++:(.text+0x8358): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text+0x8370): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase211::run()':
debug-test.c++:(.text+0x88ea): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x8964): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x8b8c): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x8bf8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x8dfd): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x8e7c): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x9072): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x90f1): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x92f6): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x9378): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x9405): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x9485): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x967e): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x96de): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text+0x9761): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::MockExceptionCallback::~MockExceptionCallback()':
debug-test.c++:(.text+0x37a): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase471::run() [clone .cold]':
debug-test.c++:(.text.unlikely+0x1df): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x208): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x231): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x25a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x283): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug-test.o:debug-test.c++:(.text.unlikely+0x297): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase420::run() [clone .cold]':
debug-test.c++:(.text.unlikely+0x4f5): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0xcf4): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x1426): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x1a82): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x233c): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase300::run() [clone .cold]':
debug-test.c++:(.text.unlikely+0x3703): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::_::(anonymous namespace)::TestCase211::run() [clone .cold]':
debug-test.c++:(.text.unlikely+0x3f6a): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x417d): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x4327): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x454e): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x4c76): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x4e73): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x5243): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x5440): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: debug-test.c++:(.text.unlikely+0x574b): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug-test.o: in function `kj::String kj::str<char const*&, char const (&) [2], int&, char const (&) [3], int&, char const (&) [3], kj::LogSeverity&, char const (&) [3], kj::String>(char const*&, char const (&) [2], int&, char const (&) [3], int&, char const (&) [3], kj::LogSeverity&, char const (&) [3], kj::String&&)':
debug-test.c++:(.text._ZN2kj3strIJRPKcRA2_S1_RiRA3_S1_S6_S8_RNS_11LogSeverityES8_NS_6StringEEEESB_DpOT_[_ZN2kj3strIJRPKcRA2_S1_RiRA3_S1_S6_S8_RNS_11LogSeverityES8_NS_6StringEEEESB_DpOT_]+0x78): undefined reference to `kj::operator*(kj::_::Stringifier, kj::LogSeverity)'
/usr/bin/ld: tmp/kj/debug-test.o: in function `void kj::_::Debug::log<char const (&) [74], kj::_::DebugComparison<kj::Exception::Type, kj::Exception::Type>&, kj::Exception::Type, kj::Exception::Type>(char const*, int, kj::LogSeverity, char const*, char const (&) [74], kj::_::DebugComparison<kj::Exception::Type, kj::Exception::Type>&, kj::Exception::Type&&, kj::Exception::Type&&)':
debug-test.c++:(.text._ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_[_ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_]+0x52): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: debug-test.c++:(.text._ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_[_ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_]+0x60): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: debug-test.c++:(.text._ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_[_ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_]+0x12b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: debug-test.c++:(.text._ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_[_ZN2kj1_5Debug3logIJRA74_KcRNS0_15DebugComparisonINS_9Exception4TypeES8_EES8_S8_EEEvPS3_iNS_11LogSeverityESB_DpOT_]+0x156): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x840): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x848): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x8e8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x8f0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x938): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x940): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x988): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x990): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x9d8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0x9e0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0xa28): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0xa30): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0xa78): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug-test.o:(.rodata+0xa80): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/compat/url-test.o
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/compat/http-test.o
/usr/bin/ld: tmp/kj/timer.o: in function `kj::Timer::makeTimeoutException()':
timer.c++:(.text+0x31a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter> >::disposeImpl(void*) const':
timer.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::fulfill(kj::_::Void&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o:timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation)':
mutex.c++:(.text+0x255): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: mutex.c++:(.text+0x268): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&)':
mutex.c++:(.text+0x3a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: mutex.c++:(.text+0x5fa): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: mutex.c++:(.text+0x834): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::wait(kj::_::Mutex::Predicate&, kj::Maybe<kj::Quantity<long, kj::_::NanosecondLabel> >, kj::NoopSourceLocation)':
mutex.c++:(.text+0xac5): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::HeapDisposer<kj::Exception>::disposeImpl(void*) const':
mutex.c++:(.text._ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv]+0xd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation) [clone .cold]':
mutex.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&) [clone .cold]':
mutex.c++:(.text.unlikely+0x68): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const':
async.c++:(.text+0x3c7): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x3d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ImmediateBrokenPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xb48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::(anonymous namespace)::YieldHarderPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xdee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xe08): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xfe0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x104e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x14f9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1739): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1752): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1924): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)::{lambda()#4}::operator()() const':
async.c++:(.text+0x1968): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1ba9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1bc6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2008): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x2240): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x225e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&)':
async.c++:(.text+0x24db): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async.c++:(.text+0x24eb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler()':
async.c++:(.text+0x2548): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x255d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadPaf::unfulfilledException()':
async.c++:(.text+0x28ae): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f22): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x3179): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3192): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x33e7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3401): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x3438): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkBranchBase::releaseHub(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x4164): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x43a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x43ba): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x4594): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::Branch::getPart()':
async.c++:(.text+0x4823): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TraceBuilder::toString()':
async.c++:(.text+0x4a26): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4a34): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::getAsyncTrace()':
async.c++:(.text+0x4bdd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4beb): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::fire()':
async.c++:(.text+0x5149): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x53b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x53ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::StringPtr)':
async.c++:(.text+0x5788): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x579f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::setDisconnected()':
async.c++:(.text+0x59d0): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x59df): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::EventPort::wake() const':
async.c++:(.text+0x5d4b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5d57): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0x5d61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Executor::getLoop() const':
async.c++:(.text+0x5e67): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5e73): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkHubBase::fire()':
async.c++:(.text+0x8848): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8ae1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x8afe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ExclusiveJoinPromiseNode::Branch::fire()':
async.c++:(.text+0x8d3a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8d8e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::EagerPromiseNodeBase::fire()':
async.c++:(.text+0x9247): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x94a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x94c6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run()':
async.c++:(.text+0x9fb9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa252): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::run()':
async.c++:(.text+0xa5a5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa9ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xaa01): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire()':
async.c++:(.text+0xae61): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xaeb5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xb387): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb3a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb60f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb628): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb640): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const':
async.c++:(.text+0xc310): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0xc32e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)':
async.c++:(.text+0xc7f5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xca06): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xca2b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f50): undefined reference to `kj::Exception::addTrace(void*)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const [clone .cold]':
async.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&) [clone .cold]':
async.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler() [clone .cold]':
async.c++:(.text.unlikely+0x24): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::DummyFunctor, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x7f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x1a4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run() [clone .cold]':
async.c++:(.text.unlikely+0xbc5): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text.unlikely+0xcdc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire() [clone .cold]':
async.c++:(.text.unlikely+0xdd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xdfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xe48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const [clone .cold]':
async.c++:(.text.unlikely+0x1091): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x11e5): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)::{lambda()#1}::operator()() const':
async.c++:(.text._ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv[_ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv]+0xd): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)':
async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x5a): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x104): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `void kj::_::Debug::log<char const (&) [39], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [39], kj::Exception&)':
async.c++:(.text._ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x4a): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> >::fulfill(kj::_::Void&&) [clone .part.0]':
async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> >::reject(kj::Exception&&) [clone .part.0]':
async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::TaskSet::Task::fire()':
async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x4e): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x314): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x333): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x554): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x569): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x656): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::AsyncCapabilityStream::tryReceiveFd()::ResultHolder>::disposeImpl(void*) const':
async-io.c++:(.text+0x3f4): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo> >::disposeImpl(void*) const':
async-io.c++:(.text+0x4ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead> >::disposeImpl(void*) const':
async-io.c++:(.text+0x55d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::PumpSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x61d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x73d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TwoWayPipeEnd> kj::heap<kj::(anonymous namespace)::TwoWayPipeEnd, kj::Own<kj::(anonymous namespace)::AsyncPipe>, kj::Own<kj::(anonymous namespace)::AsyncPipe> >(kj::Own<kj::(anonymous namespace)::AsyncPipe>&&, kj::Own<kj::(anonymous namespace)::AsyncPipe>&&)':
async-io.c++:(.text+0x15d5): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> > kj::heap<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult>, kj::AsyncCapabilityStream::ReadResult>(kj::AsyncCapabilityStream::ReadResult&&) [clone .isra.0]':
async-io.c++:(.text+0x16ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x18a5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1b0b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1b20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d73): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d88): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x61bb): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::String, unsigned long, kj::(anonymous namespace)::AllReader::readAllText(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x63e4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x6422): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64e2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x66a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x66c1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `non-virtual thunk to kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x679b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0x93ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x93f2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x95e0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ReadSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x9c28): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x9c4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Array<unsigned char>, unsigned long, kj::(anonymous namespace)::AllReader::readAllBytes(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x9d04): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9d42): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9e02): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x9fc9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeWriteEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa272): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa2d4): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeReadEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa6b2): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa714): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TwoWayPipeEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa78a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa814): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite> >::disposeImpl(void*) const':
async-io.c++:(.text+0xb18d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::newOneWayPipe(kj::Maybe<unsigned long>)':
async-io.c++:(.text+0xb4fb): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xb5c3): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TeeBranch> kj::heap<kj::(anonymous namespace)::TeeBranch, kj::Own<kj::(anonymous namespace)::AsyncTee> >(kj::Own<kj::(anonymous namespace)::AsyncTee>&&)':
async-io.c++:(.text+0xc1e6): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::TeeBranch::tryTee(unsigned long)':
async-io.c++:(.text+0xc97d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xd702): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xd70e): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xd718): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdb7a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdb86): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xdb90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdc4d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdc61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::abortRead()':
async-io.c++:(.text+0xdcd6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdceb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::abortRead()':
async-io.c++:(.text+0xddc6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdde6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe276): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe2d6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe309): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::abortRead()':
async-io.c++:(.text+0xe3a6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xe3bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling()':
async-io.c++:(.text+0xfac8): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xfb9d): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee()':
async-io.c++:(.text+0x10ac0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&)':
async-io.c++:(.text+0x10dda): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x10e1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x10e86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
async-io.c++:(.text+0x10fb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x10fcd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x11066): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1107d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >)':
async-io.c++:(.text+0x11116): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1112d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x111b6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x111cd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::pumpTo(kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x11256): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1126d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryRead(void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x112f6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1130d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithStreams(void*, unsigned long, unsigned long, kj::Own<kj::AsyncCapabilityStream>*, unsigned long)':
async-io.c++:(.text+0x11397): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x113c8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveStream()::{lambda(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&)#1}::operator()(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&) const':
async-io.c++:(.text+0x114e9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11518): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11547): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11578): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const':
async-io.c++:(.text+0x11608): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1164a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1167b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x116f7): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11728): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const':
async-io.c++:(.text+0x121bf): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x123a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x123f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x124ab): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x12511): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12519): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12559): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x12d8a): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x12da1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TeeBranch>::disposeImpl(void*) const':
async-io.c++:(.text+0x12e6b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0x12e87): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x13222): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x13239): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x152f2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x152ff): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x1657c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1658f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const::{lambda(unsigned long)#2}::operator()(unsigned long)':
async-io.c++:(.text+0x16b27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x16b6d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long)':
async-io.c++:(.text+0x1703e): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1704a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x17054): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x17796): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x177c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17a5d): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x17c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17cd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x1bb16): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbfb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1bc29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1c985): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1c995): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1c9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Own<kj::AsyncOutputStream>, kj::(anonymous namespace)::PromisedAsyncOutputStream::PromisedAsyncOutputStream(kj::Promise<kj::Own<kj::AsyncOutputStream> >)::{lambda(kj::Own<kj::AsyncOutputStream>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1ca78): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cab8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1caf1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1cb37): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cded): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1cdfd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ce09): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1ce48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cee6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cefd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cf33): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cfff): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1d00f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d01d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1d05c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d104): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d120): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d152): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)::{lambda()#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d71c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d75c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::AsyncTee::pull()::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1dc1e): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1dcb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1dcdf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dd5d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ddc5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dddc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1de11): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1e2eb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#2}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x205d3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x205e6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x206af): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207e3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#4}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20d0c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x20d4a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(void const*, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20f43): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x20f56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2101f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x210cc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x21103): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2161c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2165a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x242f9): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x24308): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x24315): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2482c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2486c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248b6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248cf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x24949): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x268b2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x268bc): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x268c4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::LimitedInputStream::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x26dbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26dfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e46): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x26ee9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x275b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x275d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x275de): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27632): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276bc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27788): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x277a2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x277ae): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27806): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2788c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::tryRead(void*, unsigned long, unsigned long)::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x27e29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a18b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a1c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a288): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a2d2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a30c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a32e): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a358): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a370): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a3a0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a3ea): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a424): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a446): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a618): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a654): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a6dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a70d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a829): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2a840): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a859): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a889): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a9f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2aa5e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b181): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b191): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b19d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x2b25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b31c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b353): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::tryRead(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b3e3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b3f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b4bf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b57c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b5b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b653): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b666): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b72f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b7dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b813): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult> >(kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b8b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b8dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b9b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2ba6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2baa3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2bf31): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2bf9a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(kj::Promise<unsigned long>)#1}::operator()(kj::Promise<unsigned long>) const::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c093): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2c0a6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c22c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c263): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPump::pump()::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c77c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2c7ba): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling() [clone .cold]':
async-io.c++:(.text.unlikely+0x215a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee() [clone .cold]':
async-io.c++:(.text.unlikely+0x24bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x25c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x25f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2610): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >) [clone .cold]':
async-io.c++:(.text.unlikely+0x262a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2644): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const [clone .cold]':
async-io.c++:(.text.unlikely+0x2740): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2759): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const [clone .cold]':
async-io.c++:(.text.unlikely+0x29b4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}::operator()(kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ad3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ba6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x2bc7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((unsigned long*)(decltype(nullptr)), false)) kj::newAdaptedPromise<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom, kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&>(kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::AsyncCapabilityStream::ReadResult*)(decltype(nullptr)), false)) kj::newAdaptedPromise<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> > >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>&&, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> >&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2d90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2e1c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2fbd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const> >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3023): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>, decltype(nullptr)>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&&, decltype(nullptr)&&) [clone .constprop.0] [clone .cold]':
async-io.c++:(.text.unlikely+0x3072): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3117): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x3170): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x326c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&) [clone .cold]':
async-io.c++:(.text.unlikely+0x33c3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x344c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::AsyncInputStream::read(void*, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x3c94): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4793): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47a8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47bd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47ef): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4815): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4821): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4838): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x486b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4902): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x491b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4938): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4951): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x497d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x499d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ForkBranch<kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x51): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x79): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_21AsyncCapabilityStream10ReadResultEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_21AsyncCapabilityStream10ReadResultEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<unsigned long> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeImEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeImEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x55): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x68): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncCapabilityStream> > >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
async-io.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED2Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
async-io.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED0Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x7d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS1_4VoidEEEJS3_EEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIvEC5ENS_1_4VoidE]+0x235): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ImmediatePromiseNode<kj::AutoCloseFd>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x86): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x245): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x25f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x280): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::fulfill(kj::_::Void&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x91): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0xae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::reject(kj::Exception&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x1f5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x241): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> > kj::heap<kj::_::ImmediatePromiseNode<kj::AutoCloseFd>, kj::AutoCloseFd>(kj::AutoCloseFd&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x8f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xb3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xe9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x118): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x137): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x17a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x18a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1a8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1c5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> > > kj::heap<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> >, kj::Canceler&, kj::Promise<unsigned long> >(kj::Canceler&, kj::Promise<unsigned long>&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_]+0x16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::_::Void>::operator=(kj::_::ExceptionOr<kj::_::Void>&&)':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE]+0x7d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x48): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x5b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x3b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Promise<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x5a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> > >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x5a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::BrokenHttpService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const':
http-test.c++:(.text+0x1b8d): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http-test.c++:(.text+0x1ba0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const::{lambda()#1}::operator()() const':
http-test.c++:(.text+0x7463): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x747a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase299::run()':
http-test.c++:(.text+0x81c3): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x8218): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x826c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x82c0): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x850d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x8540): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x8570): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x8775): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x87a8): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x87d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x89dd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x8a10): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x8a47): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x8c45): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x8c74): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x8ca4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2543::run()':
http-test.c++:(.text+0x8fec): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x924f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x96b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2501::run()':
http-test.c++:(.text+0x98a0): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x9b03): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x9f79): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2522::run()':
http-test.c++:(.text+0xa160): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0xa3c3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xa829): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase3132::run()':
http-test.c++:(.text+0xab55): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0xabb6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0xac13): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0xac6f): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0xad4b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xad7e): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0xadae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xadde): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xae11): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0xae41): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xae6e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xaea1): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0xaed8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xaf06): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0xaf35): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0xaf65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::DummyService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)':
http-test.c++:(.text+0xb8d6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0xb8e9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2890::run()':
http-test.c++:(.text+0x12218): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2820::run()':
http-test.c++:(.text+0x12718): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2691::run()':
http-test.c++:(.text+0x12906): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x12b11): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x12e60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2662::run()':
http-test.c++:(.text+0x132e8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2720::run()':
http-test.c++:(.text+0x137b8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2592::run()':
http-test.c++:(.text+0x13c88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o:http-test.c++:(.text+0x14158): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::doDelayedCompletionWebSocketTest(bool, bool)':
http-test.c++:(.text+0x14d5c): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x14d79): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x14dda): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x14e35): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x14e5b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x14e8a): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase1035::run()':
http-test.c++:(.text+0x18281): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x18347): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x18573): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x185a6): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x185d0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x185fb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x1862a): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x18654): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2480::run()':
http-test.c++:(.text+0x18b96): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x18df9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x19119): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2088::run()':
http-test.c++:(.text+0x1e891): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x1ec3b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x1ec98): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2061::run()':
http-test.c++:(.text+0x1f180): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x1f5cb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x1f628): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase1544::run()':
http-test.c++:(.text+0x1fbdb): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text+0x2004a): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text+0x200d4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2946::run()':
http-test.c++:(.text+0x2bd89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::doDelayedCompletionTest(bool, kj::Maybe<unsigned long>)':
http-test.c++:(.text+0x2da4c): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x2da64): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x2dac5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-test.c++:(.text+0x2db53): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x2db82): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x2dbb2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase1582::run()':
http-test.c++:(.text+0x34a91): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text+0x34f5a): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text+0x34fe4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::String, kj::(anonymous namespace)::TestCase3703::run()::{lambda()#2}::operator()() const::{lambda(kj::String)#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-test.c++:(.text+0x36f3c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x37169): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x371a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x371c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o:http-test.c++:(.text+0x372d7): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-test.c++:(.text+0x4c331): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-test.c++:(.text+0x4c346): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::Array<unsigned char>, kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-test.c++:(.text+0x4c8c4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x4c8ed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x4c914): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x4c939): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o:http-test.c++:(.text+0x4cf64): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::Array<unsigned char>, kj::(anonymous namespace)::BrokenHttpService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-test.c++:(.text+0x4d0a4): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http-test.c++:(.text+0x4d0b7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::TestCase2275::run()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-test.c++:(.text+0x4d644): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x4d66d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x4d686): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text+0x4d6a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o:http-test.c++:(.text+0x4dcb4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2773::run()':
http-test.c++:(.text+0x58274): undefined reference to `kj::_::LogExpectation::LogExpectation(kj::LogSeverity, kj::StringPtr)'
/usr/bin/ld: http-test.c++:(.text+0x583f2): undefined reference to `kj::_::LogExpectation::~LogExpectation()'
/usr/bin/ld: http-test.c++:(.text+0x584b8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::BrokenHttpService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const [clone .cold]':
http-test.c++:(.text.unlikely+0x1ea): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const::{lambda()#1}::operator()() const [clone .cold]':
http-test.c++:(.text.unlikely+0x159e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase299::run() [clone .cold]':
http-test.c++:(.text.unlikely+0x1769): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text.unlikely+0x179e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o:http-test.c++:(.text.unlikely+0x17b5): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::(anonymous namespace)::TestCase2773::run() [clone .cold]':
http-test.c++:(.text.unlikely+0x9c76): undefined reference to `kj::_::LogExpectation::~LogExpectation()'
/usr/bin/ld: http-test.c++:(.text.unlikely+0x9cb7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text.unlikely+0x9d25): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<void>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x3c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::ExceptionOr<kj::String>::~ExceptionOr()':
http-test.c++:(.text._ZN2kj1_11ExceptionOrINS_6StringEED2Ev[_ZN2kj1_11ExceptionOrINS_6StringEED5Ev]+0x63): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<kj::String>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE]+0x3d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE]+0xac): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::ExceptionOr<kj::HttpClient::Response>::~ExceptionOr()':
http-test.c++:(.text._ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED2Ev[_ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED2Ev[_ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED5Ev]+0x5a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<kj::HttpClient::Response>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE]+0x45): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE]+0xa6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE]+0xcc): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<unsigned long>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<bool>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0xc4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<kj::HttpInputStream::Message>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x3d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0xac): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x136): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x14e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::ExceptionOr<kj::Array<unsigned char> >::~ExceptionOr()':
http-test.c++:(.text._ZN2kj1_11ExceptionOrINS_5ArrayIhEEED2Ev[_ZN2kj1_11ExceptionOrINS_5ArrayIhEEED5Ev]+0x63): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<kj::Array<unsigned char> >::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE]+0x3d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE]+0xac): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `void kj::_::Debug::log<kj::Exception&>(char const*, int, kj::LogSeverity, char const*, kj::Exception&)':
http-test.c++:(.text._ZN2kj1_5Debug3logIJRNS_9ExceptionEEEEvPKciNS_11LogSeverityES6_DpOT_[_ZN2kj1_5Debug3logIJRNS_9ExceptionEEEEvPKciNS_11LogSeverityES6_DpOT_]+0x20): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::ExceptionOr<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close> >::~ExceptionOr()':
http-test.c++:(.text._ZN2kj1_11ExceptionOrINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEED5Ev]+0x56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::String kj::str<kj::Exception&>(kj::Exception&)':
http-test.c++:(.text._ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_]+0xd): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<kj::HttpClient::WebSocketResponse>::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0x46): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0xe8): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0xf6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0x289): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::Promise<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close> >::wait(kj::WaitScope&)':
http-test.c++:(.text._ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE]+0x43): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE]+0x12a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE]+0x14c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `void kj::_::Debug::log<char const (&) [83], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [83], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-test.c++:(.text._ZN2kj1_5Debug3logIJRA83_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA83_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `void kj::_::Debug::log<char const (&) [76], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [76], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-test.c++:(.text._ZN2kj1_5Debug3logIJRA76_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA76_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `void kj::_::Debug::log<char const (&) [84], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [84], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-test.c++:(.text._ZN2kj1_5Debug3logIJRA84_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA84_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `void kj::_::Debug::log<char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-test.c++:(.text._ZN2kj1_5Debug3logIJRA78_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA78_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb320): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb328): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb390): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb398): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb3f8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb400): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb4e8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb4f0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb550): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb558): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb5d0): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb5d8): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb638): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb640): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb6d0): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb6d8): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb738): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xb740): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xbcc8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-test.o:(.rodata+0xbcd0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::String kj::str<kj::_::DebugComparison<kj::Exception::Type, kj::Exception::Type>&>(kj::_::DebugComparison<kj::Exception::Type, kj::Exception::Type>&)':
http-test.c++:(.text._ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_]+0x11): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: http-test.c++:(.text._ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_]+0x21): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: tmp/kj/compat/http-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Array<unsigned char>, kj::Promise<kj::Array<unsigned char> >::ignoreResult()::{lambda(kj::Array<unsigned char>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x4c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x6f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x731): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x754): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-test.o:http-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x819): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::NetworkAddressHttpClient::RefcountedClient::~RefcountedClient()':
http.c++:(.text+0x73b4): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http.c++:(.text+0x741b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x7434): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::HttpClientAdapter::DelayedEofInputStream::wrap<unsigned long>(unsigned long, kj::Promise<unsigned long>)::{lambda(kj::Exception&&)#2}::operator()(kj::Exception&&) const::{lambda()#1}, kj::_::PropagateException> >::disposeImpl(void*) const':
http.c++:(.text+0x9af3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::OneOf<kj::HttpHeaders::Request, kj::HttpHeaders::ProtocolError>, kj::ArrayPtr<char>, kj::(anonymous namespace)::HttpInputStreamImpl::readRequestHeaders()::{lambda(kj::ArrayPtr<char>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0xd696): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0xd6d4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0xd70a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::taskFailed(kj::Exception&&)':
http.c++:(.text+0xf5c5): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpInputStreamImpl::abortRead()':
http.c++:(.text+0xf6c1): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0xf6d6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketImpl::receive(unsigned long)::{lambda(unsigned long)#3}::operator()(unsigned long) const':
http.c++:(.text+0xfac7): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0xfad3): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0xfadd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive>::get(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x10573): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x105b0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive>::reject(kj::Exception&&) [clone .part.0]':
http.c++:(.text+0x107c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10853): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x10868): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::receive(unsigned long)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>)#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::receive(unsigned long)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x10c04): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x10c15): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10c3b): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x10ce3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10d53): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10e4b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10e81): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10f03): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x10f39): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::abort()':
http.c++:(.text+0x11ba6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x11bbb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::abort()':
http.c++:(.text+0x11d06): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x11d1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend::abort()':
http.c++:(.text+0x11df6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x11e0b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient>, kj::Own<kj::NetworkAddress>, kj::(anonymous namespace)::NetworkHttpClient::getClient(kj::Url&)::{lambda(kj::Own<kj::NetworkAddress>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x13664): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x136a0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1372e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x13774): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x139ab): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServerErrorHandler::handleApplicationError(kj::Exception, kj::Maybe<kj::HttpService::Response&>)':
http.c++:(.text+0x17df8): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x18005): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x18071): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x18181): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::disconnect()':
http.c++:(.text+0x18b9b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x18bb0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::receive(unsigned long)':
http.c++:(.text+0x1d5e6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d5fd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Disconnected::receive(unsigned long)':
http.c++:(.text+0x1d686): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d69d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda()#3}::operator()() const':
http.c++:(.text+0x1d75d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d774): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpOutputStream::finishBody()':
http.c++:(.text+0x1d877): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d8c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::HttpFixedLengthEntityWriter::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x1de4c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1de8a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ded4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1deed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x1df81): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpNullEntityWriter::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
http.c++:(.text+0x1e083): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1e09a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpNullEntityWriter::write(void const*, unsigned long)':
http.c++:(.text+0x1e123): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1e13a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpOutputStream::abortBody()':
http.c++:(.text+0x1e1e2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1e234): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::HttpChunkedEntityWriter::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x1eb8c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ebca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ec14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ec2d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x1ecb9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}>(kj::_::ReturnType_&&)':
http.c++:(.text+0x1edaa): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http.c++:(.text+0x1edeb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ee56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}::operator()() const::{lambda()#1}::operator()() const':
http.c++:(.text+0x1ef8f): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1efa6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::tryPumpFrom(kj::WebSocket&)':
http.c++:(.text+0x1f03a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f069): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::pumpTo(kj::WebSocket&)':
http.c++:(.text+0x1f0f6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f10d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::disconnect()':
http.c++:(.text+0x1f196): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f1ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::close(unsigned short, kj::StringPtr)':
http.c++:(.text+0x1f236): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f24d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::send(kj::ArrayPtr<char const>)':
http.c++:(.text+0x1f2d6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f2ed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::send(kj::ArrayPtr<unsigned char const>)':
http.c++:(.text+0x1f376): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f38d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::ConnectionCounter, kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::Maybe<unsigned long>)::{lambda(kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::ConnectionCounter&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x1fb58): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1fb94): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1fc66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1fc89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x1fe09): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpInputStreamImpl::readHeader(kj::(anonymous namespace)::HttpInputStreamImpl::HeaderType, unsigned long, unsigned long)':
http.c++:(.text+0x21d5c): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x21db2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketImpl::receive(unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
http.c++:(.text+0x22f89): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x22f9c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x23017): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2302a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, kj::_::Void, kj::CaptureByMove<kj::CaptureByMove<kj::(anonymous namespace)::PromiseNetworkAddressHttpClient::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::Maybe<unsigned long>)::{lambda(kj::HttpHeaders&&, kj::String&&)#1}, kj::HttpHeaders>, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x24bf9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x24c31): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x24cce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x24ce5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x24e68): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpChunkedEntityReader::tryReadInternal(void*, unsigned long, unsigned long, unsigned long)::{lambda(unsigned long)#2}::operator()(unsigned long) const':
http.c++:(.text+0x2c367): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2c373): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x2c37d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpFixedLengthEntityReader::tryReadInternal(void*, unsigned long, unsigned long, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
http.c++:(.text+0x2c475): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2c481): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x2c48b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::HttpFixedLengthEntityWriter::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#2}::operator()(unsigned long) const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x2cd5c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2cd9a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2cde4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2cdfd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x2ce89): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::WebSocketImpl::receive(unsigned long)::{lambda(unsigned long)#3}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x2e2a9): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2e2b8): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x2e2c5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient>, kj::(anonymous namespace)::PromiseNetworkAddressHttpClient::PromiseNetworkAddressHttpClient(kj::Promise<kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient> >)::{lambda(kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x2e7dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2e800): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2e846): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2e869): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x2e901): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::pumpTo(kj::WebSocket&)::{lambda()#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::pumpTo(kj::WebSocket&)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x30070): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x30081): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x300a7): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x300de): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x30101): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpTo::tryPumpFrom(kj::WebSocket&)::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3065c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x30680): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x30699): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x306b9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::HttpClientAdapter::WebSocketResponseImpl::setPromise(kj::Promise<void>)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x33bc8): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x33bd9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::HttpClientAdapter::ResponseImpl::send(unsigned int, kj::StringPtr, kj::HttpHeaders const&, kj::Maybe<unsigned long>)::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x340cc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x340f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x34109): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x34129): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x34189): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::HttpClientAdapter::ResponseImpl::setPromise(kj::Promise<void>)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x34318): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x34329): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::HttpClientAdapter::DelayedEofInputStream::wrap<unsigned long>(unsigned long, kj::Promise<unsigned long>)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::HttpClientAdapter::DelayedEofInputStream::wrap<unsigned long>(unsigned long, kj::Promise<unsigned long>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x34431): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x344f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3462b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x34661): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x3476b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda()#3}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3820b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x38220): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, unsigned long, kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda(unsigned long)#4}, kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda(kj::Exception&&)#5}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3835c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http.c++:(.text+0x383d3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x383f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::WebSocketImpl::queuePong(kj::Array<unsigned char>)::{lambda(kj::Array<unsigned char>)#1}, kj::Array<unsigned char> >, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x38994): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x389b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x389ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x38fd4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}::operator()() const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3a7fe): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x3a813): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::pumpWebSocketLoop(kj::WebSocket&, kj::WebSocket&)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&)#1}::operator()(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3ad94): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3adb1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3adca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::pumpWebSocketLoop(kj::WebSocket&, kj::WebSocket&)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&)#1}::operator()(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&) const::{lambda()#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3b374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x3b391): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::tryPumpFrom(kj::WebSocket&)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>)#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::tryPumpFrom(kj::WebSocket&)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3bcdd): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x3bcee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3bd95): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend::pumpTo(kj::WebSocket&)::{lambda()#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend::pumpTo(kj::WebSocket&)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3bf24): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x3bf35): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3bfbf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, bool, kj::(anonymous namespace)::HttpClientImpl::watchForClose()::{lambda(bool)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3c393): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3c3ae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3c3c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x3c92d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::abort()':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x10): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x1a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x22): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x36): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket>::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerIZNS_10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEE15BrokenWebSocketE11disposeImplEPv[_ZNK2kj1_12HeapDisposerIZNS_10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEE15BrokenWebSocketE11disposeImplEPv]+0x15): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<bool> >::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeIbEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeIbEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::Own<kj::_::ImmediatePromiseNode<bool> > kj::heap<kj::_::ImmediatePromiseNode<bool>, bool>(bool&&) [clone .isra.0]':
http.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeIbEEJbEEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIbEC5Eb]+0xb6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeIbEEJbEEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIbEC5Eb]+0x295): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::SplitBranch<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, 1ul>::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE]+0xa1): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE]+0xc9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::Promise<void>, kj::_::PromiseAndFulfillerAdapter<kj::Promise<void> > >::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x263): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x2a0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::Promise<void>, kj::_::PromiseAndFulfillerAdapter<kj::Promise<void> > > >::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv]+0x7d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv]+0xa4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0xf4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::SplitBranch<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, 0ul>::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE]+0x99): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE]+0xb1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::HttpClient::WebSocketResponse, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::WebSocketResponse> >::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x11c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x158): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::HttpClient::WebSocketResponse, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::WebSocketResponse> > >::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv]+0x6d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::HttpClient::WebSocketResponse, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::WebSocketResponse> >::reject(kj::Exception&&) [clone .part.0]':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE]+0x1f7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE]+0x2e4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)':
http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x60): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x13c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x178): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x596): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x5b6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x5ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x623): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x637): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x643): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::receive(unsigned long)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::whenAborted()':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::disconnect()':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::close(unsigned short, kj::StringPtr)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::send(kj::ArrayPtr<char const>)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::send(kj::ArrayPtr<unsigned char const>)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::ExceptionOr<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> > >::~ExceptionOr()':
http.c++:(.text._ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED5Ev]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED5Ev]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::HttpClient::Response, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::Response> >::reject(kj::Exception&&)':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE]+0x207): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE]+0x2b8): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd()':
list.c++:(.text+0x88): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x94): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent()':
list.c++:(.text+0x138): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x144): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList()':
list.c++:(.text+0x1e8): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x1f4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList()':
list.c++:(.text+0x298): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x2a4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd() [clone .cold]':
list.c++:(.text.unlikely+0x18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent() [clone .cold]':
list.c++:(.text.unlikely+0x44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList() [clone .cold]':
list.c++:(.text.unlikely+0x70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList() [clone .cold]':
list.c++:(.text.unlikely+0x9c): undefined reference to `kj::Exception::~Exception()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/compat/readiness-io-test.o
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::_::Void> > kj::heap<kj::_::ImmediatePromiseNode<kj::_::Void>, kj::_::Void>(kj::_::Void&&) [clone .isra.0]':
readiness-io.c++:(.text+0x265): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x294): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::ReadyInputStreamWrapper::read(kj::ArrayPtr<unsigned char>)::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
readiness-io.c++:(.text+0x78c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x9b7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x9f2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o:readiness-io.c++:(.text+0xa0b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::ReadyInputStreamWrapper::read(kj::ArrayPtr<unsigned char>)::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::ReadyInputStreamWrapper::read(kj::ArrayPtr<unsigned char>)::{lambda()#1}>(kj::_::ReturnType_&&)':
readiness-io.c++:(.text+0x143a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: readiness-io.c++:(.text+0x1681): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x16f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::ReadyOutputStreamWrapper::write(kj::ArrayPtr<unsigned char const>)::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::ReadyOutputStreamWrapper::write(kj::ArrayPtr<unsigned char const>)::{lambda()#1}>(kj::_::ReturnType_&&)':
readiness-io.c++:(.text+0x18aa): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: readiness-io.c++:(.text+0x1af1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x1b60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::ReadyOutputStreamWrapper::uncork()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::ReadyOutputStreamWrapper::uncork()::{lambda()#1}>(kj::_::ReturnType_&&)':
readiness-io.c++:(.text+0x1d9a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: readiness-io.c++:(.text+0x1fe1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x2050): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::ReadyOutputStreamWrapper::pump()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
readiness-io.c++:(.text+0x267c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x28a5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io.c++:(.text+0x28f9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o:readiness-io.c++:(.text+0x2912): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::ForkBranch<kj::_::Void>::get(kj::_::ExceptionOrValue&)':
readiness-io.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x51): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: readiness-io.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x79): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediateBrokenPromiseNode>::disposeImpl(void*) const':
readiness-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_26ImmediateBrokenPromiseNodeEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_26ImmediateBrokenPromiseNodeEE11disposeImplEPv]+0x1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::_::Void> >::disposeImpl(void*) const':
readiness-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
readiness-io.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED2Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
readiness-io.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED0Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x7d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io.o:readiness-io.c++:(.text.unlikely+0x19): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort()':
async-unix.c++:(.text+0x42f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x438): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x441): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort()':
async-unix.c++:(.text+0x577): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x583): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text+0x620): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> > >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter> >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x386): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x465): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x479): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE]+0x22b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x17): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x20): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x29): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x73): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x7c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text.unlikely+0x85): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `decltype (reducePromiseType((int*)(decltype(nullptr)), false)) kj::newAdaptedPromise<int, kj::UnixEventPort::ChildExitPromiseAdapter, kj::UnixEventPort::ChildSet&, kj::Maybe<int>&>(kj::UnixEventPort::ChildSet&, kj::Maybe<int>&)':
async-unix.c++:(.text._ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_[_ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_]+0x200): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::Timer::makeTimeoutException()':
timer.c++:(.text+0x31a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter> >::disposeImpl(void*) const':
timer.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::fulfill(kj::_::Void&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o:timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::ThreadState(kj::Function<void ()>)':
thread.c++:(.text+0xe1): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::unref()':
thread.c++:(.text+0x20c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::runThread(void*)':
thread.c++:(.text+0x2de): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: thread.c++:(.text+0x534): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x736): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x751): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread()':
thread.c++:(.text+0x956): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x96d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: thread.c++:(.text+0x975): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::Thread(kj::Function<void ()>)':
thread.c++:(.text+0xab4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `void kj::_::Debug::log<char const (&) [45], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [45], kj::Exception&)':
thread.c++:(.text._ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x72): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread() [clone .cold]':
thread.c++:(.text.unlikely+0x4e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::AsyncCapabilityStream::tryReceiveFd()::ResultHolder>::disposeImpl(void*) const':
async-io.c++:(.text+0x3f4): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo> >::disposeImpl(void*) const':
async-io.c++:(.text+0x4ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead> >::disposeImpl(void*) const':
async-io.c++:(.text+0x55d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::PumpSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x61d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x73d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TwoWayPipeEnd> kj::heap<kj::(anonymous namespace)::TwoWayPipeEnd, kj::Own<kj::(anonymous namespace)::AsyncPipe>, kj::Own<kj::(anonymous namespace)::AsyncPipe> >(kj::Own<kj::(anonymous namespace)::AsyncPipe>&&, kj::Own<kj::(anonymous namespace)::AsyncPipe>&&)':
async-io.c++:(.text+0x15d5): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> > kj::heap<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult>, kj::AsyncCapabilityStream::ReadResult>(kj::AsyncCapabilityStream::ReadResult&&) [clone .isra.0]':
async-io.c++:(.text+0x16ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x18a5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1b0b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1b20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d73): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d88): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x61bb): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::String, unsigned long, kj::(anonymous namespace)::AllReader::readAllText(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x63e4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x6422): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64e2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x66a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x66c1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `non-virtual thunk to kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x679b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0x93ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x93f2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x95e0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ReadSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x9c28): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x9c4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Array<unsigned char>, unsigned long, kj::(anonymous namespace)::AllReader::readAllBytes(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x9d04): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9d42): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9e02): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x9fc9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeWriteEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa272): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa2d4): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeReadEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa6b2): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa714): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TwoWayPipeEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa78a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa814): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite> >::disposeImpl(void*) const':
async-io.c++:(.text+0xb18d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::newOneWayPipe(kj::Maybe<unsigned long>)':
async-io.c++:(.text+0xb4fb): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xb5c3): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TeeBranch> kj::heap<kj::(anonymous namespace)::TeeBranch, kj::Own<kj::(anonymous namespace)::AsyncTee> >(kj::Own<kj::(anonymous namespace)::AsyncTee>&&)':
async-io.c++:(.text+0xc1e6): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::TeeBranch::tryTee(unsigned long)':
async-io.c++:(.text+0xc97d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xd702): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xd70e): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xd718): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdb7a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdb86): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xdb90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdc4d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdc61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::abortRead()':
async-io.c++:(.text+0xdcd6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdceb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::abortRead()':
async-io.c++:(.text+0xddc6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdde6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe276): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe2d6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe309): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::abortRead()':
async-io.c++:(.text+0xe3a6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xe3bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling()':
async-io.c++:(.text+0xfac8): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xfb9d): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee()':
async-io.c++:(.text+0x10ac0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&)':
async-io.c++:(.text+0x10dda): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x10e1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x10e86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
async-io.c++:(.text+0x10fb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x10fcd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x11066): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1107d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >)':
async-io.c++:(.text+0x11116): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1112d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x111b6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x111cd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::pumpTo(kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x11256): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1126d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryRead(void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x112f6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1130d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithStreams(void*, unsigned long, unsigned long, kj::Own<kj::AsyncCapabilityStream>*, unsigned long)':
async-io.c++:(.text+0x11397): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x113c8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveStream()::{lambda(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&)#1}::operator()(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&) const':
async-io.c++:(.text+0x114e9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11518): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11547): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11578): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const':
async-io.c++:(.text+0x11608): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1164a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1167b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x116f7): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11728): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const':
async-io.c++:(.text+0x121bf): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x123a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x123f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x124ab): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x12511): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12519): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12559): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x12d8a): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x12da1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TeeBranch>::disposeImpl(void*) const':
async-io.c++:(.text+0x12e6b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0x12e87): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x13222): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x13239): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x152f2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x152ff): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x1657c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1658f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const::{lambda(unsigned long)#2}::operator()(unsigned long)':
async-io.c++:(.text+0x16b27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x16b6d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long)':
async-io.c++:(.text+0x1703e): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1704a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x17054): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x17796): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x177c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17a5d): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x17c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17cd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x1bb16): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbfb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1bc29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1c985): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1c995): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1c9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Own<kj::AsyncOutputStream>, kj::(anonymous namespace)::PromisedAsyncOutputStream::PromisedAsyncOutputStream(kj::Promise<kj::Own<kj::AsyncOutputStream> >)::{lambda(kj::Own<kj::AsyncOutputStream>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1ca78): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cab8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1caf1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1cb37): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cded): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1cdfd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ce09): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1ce48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cee6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cefd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cf33): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cfff): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1d00f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d01d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1d05c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d104): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d120): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d152): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)::{lambda()#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d71c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d75c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::AsyncTee::pull()::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1dc1e): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1dcb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1dcdf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dd5d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ddc5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dddc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1de11): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1e2eb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#2}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x205d3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x205e6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x206af): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207e3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#4}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20d0c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x20d4a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(void const*, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20f43): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x20f56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2101f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x210cc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x21103): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2161c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2165a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x242f9): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x24308): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x24315): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2482c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2486c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248b6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248cf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x24949): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x268b2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x268bc): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x268c4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::LimitedInputStream::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x26dbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26dfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e46): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x26ee9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x275b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x275d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x275de): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27632): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276bc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27788): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x277a2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x277ae): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27806): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2788c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::tryRead(void*, unsigned long, unsigned long)::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x27e29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a18b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a1c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a288): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a2d2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a30c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a32e): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a358): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a370): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a3a0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a3ea): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a424): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a446): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a618): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a654): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a6dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a70d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a829): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2a840): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a859): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a889): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a9f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2aa5e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b181): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b191): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b19d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x2b25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b31c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b353): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::tryRead(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b3e3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b3f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b4bf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b57c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b5b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b653): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b666): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b72f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b7dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b813): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult> >(kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b8b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b8dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b9b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2ba6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2baa3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2bf31): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2bf9a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(kj::Promise<unsigned long>)#1}::operator()(kj::Promise<unsigned long>) const::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c093): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2c0a6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c22c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c263): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPump::pump()::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c77c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2c7ba): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling() [clone .cold]':
async-io.c++:(.text.unlikely+0x215a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee() [clone .cold]':
async-io.c++:(.text.unlikely+0x24bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x25c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x25f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2610): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >) [clone .cold]':
async-io.c++:(.text.unlikely+0x262a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2644): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const [clone .cold]':
async-io.c++:(.text.unlikely+0x2740): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2759): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const [clone .cold]':
async-io.c++:(.text.unlikely+0x29b4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}::operator()(kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ad3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ba6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x2bc7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((unsigned long*)(decltype(nullptr)), false)) kj::newAdaptedPromise<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom, kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&>(kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::AsyncCapabilityStream::ReadResult*)(decltype(nullptr)), false)) kj::newAdaptedPromise<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> > >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>&&, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> >&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2d90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2e1c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2fbd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const> >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3023): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>, decltype(nullptr)>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&&, decltype(nullptr)&&) [clone .constprop.0] [clone .cold]':
async-io.c++:(.text.unlikely+0x3072): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3117): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x3170): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x326c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&) [clone .cold]':
async-io.c++:(.text.unlikely+0x33c3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x344c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::AsyncInputStream::read(void*, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x3c94): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4793): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47a8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47bd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47ef): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4815): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4821): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4838): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x486b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4902): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x491b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4938): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4951): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x497d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x499d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x68): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncCapabilityStream> > >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::_::Void> > kj::heap<kj::_::ImmediatePromiseNode<kj::_::Void>, kj::_::Void>(kj::_::Void&&) [clone .isra.0]':
async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS1_4VoidEEEJS3_EEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIvEC5ENS_1_4VoidE]+0x235): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS1_4VoidEEEJS3_EEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIvEC5ENS_1_4VoidE]+0x264): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ImmediatePromiseNode<kj::AutoCloseFd>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x86): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x245): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x25f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x280): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::fulfill(kj::_::Void&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x91): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0xae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::reject(kj::Exception&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x1f5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x241): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> > kj::heap<kj::_::ImmediatePromiseNode<kj::AutoCloseFd>, kj::AutoCloseFd>(kj::AutoCloseFd&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x8f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xb3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xe9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x118): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x137): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x17a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x18a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1a8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1c5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> > > kj::heap<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> >, kj::Canceler&, kj::Promise<unsigned long> >(kj::Canceler&, kj::Promise<unsigned long>&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_]+0x16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::_::Void>::operator=(kj::_::ExceptionOr<kj::_::Void>&&)':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE]+0x7d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x48): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x5b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x3b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Promise<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x5a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> > >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x5a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncStreamFd::tryReadInternal(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long, kj::AsyncCapabilityStream::ReadResult)':
async-io-unix.c++:(.text+0x78bb): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x78ce): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x7d4f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::FdConnectionReceiver::acceptImpl(bool)':
async-io-unix.c++:(.text+0x8b8a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::bindDatagramPort()':
async-io-unix.c++:(.text+0x953d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9591): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::listen()':
async-io-unix.c++:(.text+0x96d1): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9746): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::LowLevelAsyncIoProviderImpl::wrapConnectingSocketFd(int, sockaddr const*, unsigned int, unsigned int)':
async-io-unix.c++:(.text+0x9d30): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::SocketAddress::lookupHost(kj::LowLevelAsyncIoProvider&, kj::String, kj::String, unsigned int, kj::_::NetworkFilter&)::{lambda(kj::(anonymous namespace)::SocketAddress::LookupParams&&)#2}::operator()(kj::(anonymous namespace)::SocketAddress::LookupParams&&) const':
async-io-unix.c++:(.text+0x9e9d): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: async-io-unix.c++:(.text+0x9eb8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9f24): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9f83): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: async-io-unix.c++:(.text+0xa1a5): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncIoProviderImpl::newPipeThread(kj::Function<void (kj::AsyncIoProvider&, kj::AsyncIoStream&, kj::WaitScope&)>)':
async-io-unix.c++:(.text+0xa715): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0xa811): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)::{lambda()#1}::operator()() const':
async-io-unix.c++:(.text+0xae2d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io-unix.c++:(.text+0xae44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::SocketNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::String&&)#1}, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0xc3ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc3e8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc474): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc48d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0xc5f9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)':
async-io-unix.c++:(.text+0xc814): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io-unix.c++:(.text+0xcb58): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xcbd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, unsigned long, kj::(anonymous namespace)::SocketAddress::LookupReader::read()::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0xedac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xefd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xf061): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0xf07a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncStreamFd::tryReadInternal(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long, kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0xdfc): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::FdConnectionReceiver::acceptImpl(bool) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x103b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::bindDatagramPort() [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x118b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::listen() [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x11d1): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::SocketAddress::lookupHost(kj::LowLevelAsyncIoProvider&, kj::String, kj::String, unsigned int, kj::_::NetworkFilter&)::{lambda(kj::(anonymous namespace)::SocketAddress::LookupParams&&)#2}::operator()(kj::(anonymous namespace)::SocketAddress::LookupParams&&) const [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x12ef): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1362): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncIoProviderImpl::newPipeThread(kj::Function<void (kj::AsyncIoProvider&, kj::AsyncIoStream&, kj::WaitScope&)>) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x148b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)::{lambda()#1}::operator()() const [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x1588): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::SocketNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::String&&)#1}, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x181d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1850): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x186f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text.unlikely+0x18bb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapArrayDisposer::Allocate_<kj::AutoCloseFd, false, false>::destruct(void*)':
async-io-unix.c++:(.text._ZN2kj1_17HeapArrayDisposer9Allocate_INS_11AutoCloseFdELb0ELb0EE8destructEPv[_ZN2kj1_17HeapArrayDisposer9Allocate_INS_11AutoCloseFdELb0ELb0EE8destructEPv]+0x1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::ArrayDisposer::Dispose_<kj::AutoCloseFd, false>::destruct(void*)':
async-io-unix.c++:(.text._ZN2kj13ArrayDisposer8Dispose_INS_11AutoCloseFdELb0EE8destructEPv[_ZN2kj13ArrayDisposer8Dispose_INS_11AutoCloseFdELb0EE8destructEPv]+0x1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncIoStream> > >::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv]+0x90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncIoStream> >::get(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEE3getERNS0_16ExceptionOrValueE]+0x225): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEE3getERNS0_16ExceptionOrValueE]+0x238): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AuthenticatedStream> >::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_19AuthenticatedStreamEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_19AuthenticatedStreamEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_19AuthenticatedStreamEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_19AuthenticatedStreamEEEE11disposeImplEPv]+0xd7): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/readiness-io-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::TestCase263::run()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
readiness-io-test.c++:(.text+0x5bc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io-test.c++:(.text+0x7e7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io-test.c++:(.text+0x822): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io-test.c++:(.text+0x83b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io-test.c++:(.text+0x8c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io-test.o:readiness-io-test.c++:(.text+0x8e0): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/readiness-io-test.o: in function `kj::Promise<unsigned long>::wait(kj::WaitScope&)':
readiness-io-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: readiness-io-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: readiness-io-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/readiness-io-test.o: in function `kj::Promise<void>::wait(kj::WaitScope&)':
readiness-io-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x3c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: readiness-io-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: readiness-io-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const':
async.c++:(.text+0x3c7): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x3d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ImmediateBrokenPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xb48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::(anonymous namespace)::YieldHarderPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xdee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xe08): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xfe0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x104e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x14f9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1739): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1752): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1924): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)::{lambda()#4}::operator()() const':
async.c++:(.text+0x1968): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1ba9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1bc6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2008): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x2240): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x225e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&)':
async.c++:(.text+0x24db): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async.c++:(.text+0x24eb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler()':
async.c++:(.text+0x2548): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x255d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadPaf::unfulfilledException()':
async.c++:(.text+0x28ae): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f22): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x3179): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3192): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x33e7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3401): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x3438): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkBranchBase::releaseHub(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x4164): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x43a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x43ba): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x4594): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::Branch::getPart()':
async.c++:(.text+0x4823): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TraceBuilder::toString()':
async.c++:(.text+0x4a26): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4a34): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::getAsyncTrace()':
async.c++:(.text+0x4bdd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4beb): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::fire()':
async.c++:(.text+0x5149): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x53b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x53ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::StringPtr)':
async.c++:(.text+0x5788): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x579f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::setDisconnected()':
async.c++:(.text+0x59d0): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x59df): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::EventPort::wake() const':
async.c++:(.text+0x5d4b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5d57): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0x5d61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Executor::getLoop() const':
async.c++:(.text+0x5e67): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5e73): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkHubBase::fire()':
async.c++:(.text+0x8848): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8ae1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x8afe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ExclusiveJoinPromiseNode::Branch::fire()':
async.c++:(.text+0x8d3a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8d8e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::EagerPromiseNodeBase::fire()':
async.c++:(.text+0x9247): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x94a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x94c6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run()':
async.c++:(.text+0x9fb9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa252): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::run()':
async.c++:(.text+0xa5a5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa9ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xaa01): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire()':
async.c++:(.text+0xae61): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xaeb5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xb387): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb3a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb60f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb628): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb640): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const':
async.c++:(.text+0xc310): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0xc32e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)':
async.c++:(.text+0xc7f5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xca06): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xca2b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f50): undefined reference to `kj::Exception::addTrace(void*)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const [clone .cold]':
async.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&) [clone .cold]':
async.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler() [clone .cold]':
async.c++:(.text.unlikely+0x24): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::DummyFunctor, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x7f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x1a4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run() [clone .cold]':
async.c++:(.text.unlikely+0xbc5): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text.unlikely+0xcdc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire() [clone .cold]':
async.c++:(.text.unlikely+0xdd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xdfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xe48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const [clone .cold]':
async.c++:(.text.unlikely+0x1091): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x11e5): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)::{lambda()#1}::operator()() const':
async.c++:(.text._ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv[_ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv]+0xd): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)':
async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x5a): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x104): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `void kj::_::Debug::log<char const (&) [39], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [39], kj::Exception&)':
async.c++:(.text._ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x4a): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::TaskSet::Task::fire()':
async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x4e): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x314): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x333): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x554): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x569): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x656): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd()':
list.c++:(.text+0x88): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x94): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent()':
list.c++:(.text+0x138): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x144): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList()':
list.c++:(.text+0x1e8): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x1f4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList()':
list.c++:(.text+0x298): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x2a4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd() [clone .cold]':
list.c++:(.text.unlikely+0x18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent() [clone .cold]':
list.c++:(.text.unlikely+0x44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList() [clone .cold]':
list.c++:(.text.unlikely+0x70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList() [clone .cold]':
list.c++:(.text.unlikely+0x9c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation)':
mutex.c++:(.text+0x255): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: mutex.c++:(.text+0x268): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&)':
mutex.c++:(.text+0x3a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: mutex.c++:(.text+0x5fa): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: mutex.c++:(.text+0x834): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::wait(kj::_::Mutex::Predicate&, kj::Maybe<kj::Quantity<long, kj::_::NanosecondLabel> >, kj::NoopSourceLocation)':
mutex.c++:(.text+0xac5): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::HeapDisposer<kj::Exception>::disposeImpl(void*) const':
mutex.c++:(.text._ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv]+0xd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation) [clone .cold]':
mutex.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&) [clone .cold]':
mutex.c++:(.text.unlikely+0x68): undefined reference to `kj::Exception::~Exception()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/async-xthread-test.o
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::ThreadState(kj::Function<void ()>)':
thread.c++:(.text+0xe1): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::unref()':
thread.c++:(.text+0x20c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::runThread(void*)':
thread.c++:(.text+0x2de): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: thread.c++:(.text+0x534): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x736): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x751): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread()':
thread.c++:(.text+0x956): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x96d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: thread.c++:(.text+0x975): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::Thread(kj::Function<void ()>)':
thread.c++:(.text+0xab4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `void kj::_::Debug::log<char const (&) [45], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [45], kj::Exception&)':
thread.c++:(.text._ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x72): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread() [clone .cold]':
thread.c++:(.text.unlikely+0x4e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const':
async.c++:(.text+0x3c7): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x3d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ImmediateBrokenPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xb48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::(anonymous namespace)::YieldHarderPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xdee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xe08): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xfe0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x104e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x14f9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1739): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1752): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1924): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)::{lambda()#4}::operator()() const':
async.c++:(.text+0x1968): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1ba9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1bc6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2008): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x2240): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x225e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&)':
async.c++:(.text+0x24db): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async.c++:(.text+0x24eb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler()':
async.c++:(.text+0x2548): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x255d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadPaf::unfulfilledException()':
async.c++:(.text+0x28ae): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f22): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x3179): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3192): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x33e7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3401): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x3438): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkBranchBase::releaseHub(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x4164): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x43a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x43ba): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x4594): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::Branch::getPart()':
async.c++:(.text+0x4823): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TraceBuilder::toString()':
async.c++:(.text+0x4a26): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4a34): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::getAsyncTrace()':
async.c++:(.text+0x4bdd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4beb): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::fire()':
async.c++:(.text+0x5149): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x53b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x53ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::StringPtr)':
async.c++:(.text+0x5788): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x579f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::setDisconnected()':
async.c++:(.text+0x59d0): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x59df): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::EventPort::wake() const':
async.c++:(.text+0x5d4b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5d57): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0x5d61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Executor::getLoop() const':
async.c++:(.text+0x5e67): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5e73): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkHubBase::fire()':
async.c++:(.text+0x8848): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8ae1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x8afe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ExclusiveJoinPromiseNode::Branch::fire()':
async.c++:(.text+0x8d3a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8d8e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::EagerPromiseNodeBase::fire()':
async.c++:(.text+0x9247): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x94a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x94c6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run()':
async.c++:(.text+0x9fb9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa252): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::run()':
async.c++:(.text+0xa5a5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa9ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xaa01): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire()':
async.c++:(.text+0xae61): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xaeb5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xb387): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb3a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb60f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb628): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb640): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const':
async.c++:(.text+0xc310): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0xc32e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)':
async.c++:(.text+0xc7f5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xca06): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xca2b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f50): undefined reference to `kj::Exception::addTrace(void*)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const [clone .cold]':
async.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&) [clone .cold]':
async.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler() [clone .cold]':
async.c++:(.text.unlikely+0x24): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::DummyFunctor, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x7f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x1a4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run() [clone .cold]':
async.c++:(.text.unlikely+0xbc5): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text.unlikely+0xcdc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire() [clone .cold]':
async.c++:(.text.unlikely+0xdd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xdfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xe48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const [clone .cold]':
async.c++:(.text.unlikely+0x1091): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x11e5): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)::{lambda()#1}::operator()() const':
async.c++:(.text._ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv[_ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv]+0xd): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)':
async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x5a): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x104): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `void kj::_::Debug::log<char const (&) [39], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [39], kj::Exception&)':
async.c++:(.text._ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x4a): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> >::fulfill(kj::_::Void&&) [clone .part.0]':
async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> >::reject(kj::Exception&&) [clone .part.0]':
async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::TaskSet::Task::fire()':
async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x4e): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x314): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x333): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x554): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x569): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x656): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `non-virtual thunk to kj::_::XThreadEventImpl<kj::(anonymous namespace)::TestCase313::run()::{lambda()#2}::operator()() const::{lambda()#3}, kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-xthread-test.c++:(.text+0x1037): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1048): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `non-virtual thunk to kj::_::XThreadEventImpl<kj::(anonymous namespace)::TestCase681::run()::{lambda()#2}::operator()() const::{lambda()#2}, kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-xthread-test.c++:(.text+0x12c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `non-virtual thunk to kj::_::XThreadEventImpl<kj::(anonymous namespace)::TestCase831::run()::{lambda()#2}::operator()() const::{lambda()#2}, kj::Promise<void> >::get(kj::_::ExceptionOrValue&)':
async-xthread-test.c++:(.text+0x1557): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o:async-xthread-test.c++:(.text+0x1568): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#3}::ReturnType_<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#3}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#3}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-xthread-test.c++:(.text+0xdf75): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xdfc9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#1}::ReturnType_<kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_::UnwrapPromise_&&) const':
async-xthread-test.c++:(.text+0xe085): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xe0d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase52::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase52::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-xthread-test.c++:(.text+0xe195): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xe1e9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase154::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase154::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-xthread-test.c++:(.text+0xe2a5): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xe2f9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-xthread-test.c++:(.text+0xe3c4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xe419): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase725::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase725::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-xthread-test.c++:(.text+0xe4f4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xe549): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase913::run()':
async-xthread-test.c++:(.text+0xf2ed): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xf308): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase313::run()':
async-xthread-test.c++:(.text+0xfd41): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0xfe99): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase473::run()':
async-xthread-test.c++:(.text+0x104bf): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1059d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x10859): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x10871): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase213::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}::operator()() const':
async-xthread-test.c++:(.text+0x11055): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1106c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase154::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}::operator()() const':
async-xthread-test.c++:(.text+0x11195): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x111ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `void kj::_::Debug::log<char const (&) [133], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [133], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&) [clone .isra.0]':
async-xthread-test.c++:(.text+0x11317): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase681::run()::{lambda()#2}::operator()() const':
async-xthread-test.c++:(.text+0x115cb): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x11666): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1169c): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x116c8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase725::run()':
async-xthread-test.c++:(.text+0x11b2f): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x11beb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x11c1e): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x11c44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `void kj::_::Debug::log<char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&) [clone .isra.0]':
async-xthread-test.c++:(.text+0x11e47): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `void kj::_::Debug::log<char const (&) [96], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [96], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&) [clone .isra.0]':
async-xthread-test.c++:(.text+0x11fa7): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase625::run()::{lambda()#2}::operator()() const':
async-xthread-test.c++:(.text+0x1222a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12291): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1236e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x123a4): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x123d0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x123fe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12434): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12460): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const':
async-xthread-test.c++:(.text+0x12970): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x129c3): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12a6e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12a9b): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12ac1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12aee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12b1b): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12b41): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase913::run()::{lambda()#1}::operator()() const':
async-xthread-test.c++:(.text+0x12f38): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x12fd6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13008): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13030): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase939::run()::{lambda()#1}::operator()() const':
async-xthread-test.c++:(.text+0x13268): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13306): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13338): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13360): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase547::run()':
async-xthread-test.c++:(.text+0x13c6f): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13d16): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13d9b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13ebe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13ef4): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x13fe9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x14007): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase154::run()':
async-xthread-test.c++:(.text+0x1429f): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x14364): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x144be): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x144f2): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1451e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x14561): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1457f): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase52::run()::{lambda()#2}::operator()() const':
async-xthread-test.c++:(.text+0x147e6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x148a9): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1499b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x149c4): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x149ea): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x14a21): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x14a3f): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase213::run()':
async-xthread-test.c++:(.text+0x158cf): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x15aae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x15ae0): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x15b0c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::(anonymous namespace)::TestCase102::run()':
async-xthread-test.c++:(.text+0x15f04): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x160ae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x160e0): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1610c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Promise<void>::detach<kj::(anonymous namespace)::TestCase775::run()::{lambda()#2}::operator()() const::{lambda(kj::Exception&&)#3}>(kj::(anonymous namespace)::TestCase775::run()::{lambda()#2}::operator()() const::{lambda(kj::Exception&&)#3}&&)::{lambda()#1}, kj::Exception&&>::getImpl(kj::_::ExceptionOrValue&)':
async-xthread-test.c++:(.text+0x163a2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x163c6): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: async-xthread-test.c++:(.text+0x16465): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x1647c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x164b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}::operator()() const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-xthread-test.c++:(.text+0x169c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text+0x16a09): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o:async-xthread-test.c++:(.text+0x16a40): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::Promise<unsigned int>::wait(kj::WaitScope&)':
async-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::Promise<void>::wait(kj::WaitScope&)':
async-xthread-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x3c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::Promise<int>::wait(kj::WaitScope&)':
async-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::String kj::str<kj::Exception&>(kj::Exception&)':
async-xthread-test.c++:(.text._ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_]+0xd): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::ExceptionOr<kj::_::Void>::operator=(kj::_::ExceptionOr<kj::_::Void>&&)':
async-xthread-test.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::XThreadFulfiller<void>::~XThreadFulfiller()':
async-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIvED2Ev[_ZN2kj1_16XThreadFulfillerIvED5Ev]+0x52): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIvED2Ev[_ZN2kj1_16XThreadFulfillerIvED5Ev]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o: in function `kj::_::XThreadFulfiller<int>::~XThreadFulfiller()':
async-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIiED2Ev[_ZN2kj1_16XThreadFulfillerIiED5Ev]+0x52): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-xthread-test.o:async-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIiED2Ev[_ZN2kj1_16XThreadFulfillerIiED5Ev]+0x85): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd()':
list.c++:(.text+0x88): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x94): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent()':
list.c++:(.text+0x138): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x144): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList()':
list.c++:(.text+0x1e8): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x1f4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList()':
list.c++:(.text+0x298): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x2a4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd() [clone .cold]':
list.c++:(.text.unlikely+0x18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent() [clone .cold]':
list.c++:(.text.unlikely+0x44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList() [clone .cold]':
list.c++:(.text.unlikely+0x70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList() [clone .cold]':
list.c++:(.text.unlikely+0x9c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation)':
mutex.c++:(.text+0x255): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: mutex.c++:(.text+0x268): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&)':
mutex.c++:(.text+0x3a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: mutex.c++:(.text+0x5fa): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: mutex.c++:(.text+0x834): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::wait(kj::_::Mutex::Predicate&, kj::Maybe<kj::Quantity<long, kj::_::NanosecondLabel> >, kj::NoopSourceLocation)':
mutex.c++:(.text+0xac5): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::HeapDisposer<kj::Exception>::disposeImpl(void*) const':
mutex.c++:(.text._ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv]+0xd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation) [clone .cold]':
mutex.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&) [clone .cold]':
mutex.c++:(.text.unlikely+0x68): undefined reference to `kj::Exception::~Exception()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/compat/http-socketpair-test.o
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Array<kj::(anonymous namespace)::SocketAddress> > >::disposeImpl(void*) const':
async-io-unix.c++:(.text+0x1375): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::Array<kj::(anonymous namespace)::SocketAddress> > > kj::heap<kj::_::ImmediatePromiseNode<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::Array<kj::(anonymous namespace)::SocketAddress> >(kj::Array<kj::(anonymous namespace)::SocketAddress>&&)':
async-io-unix.c++:(.text+0x14d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0x16b5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::ImmediatePromiseNode<kj::Array<kj::(anonymous namespace)::SocketAddress> >::get(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0x1aed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0x1b68): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0x2049): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncStreamFd::tryReadInternal(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long, kj::AsyncCapabilityStream::ReadResult)':
async-io-unix.c++:(.text+0x78bb): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x78ce): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x7d4f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::FdConnectionReceiver::acceptImpl(bool)':
async-io-unix.c++:(.text+0x8b8a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::bindDatagramPort()':
async-io-unix.c++:(.text+0x953d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9591): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::listen()':
async-io-unix.c++:(.text+0x96d1): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9746): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::LowLevelAsyncIoProviderImpl::wrapConnectingSocketFd(int, sockaddr const*, unsigned int, unsigned int)':
async-io-unix.c++:(.text+0x9d30): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::SocketAddress::lookupHost(kj::LowLevelAsyncIoProvider&, kj::String, kj::String, unsigned int, kj::_::NetworkFilter&)::{lambda(kj::(anonymous namespace)::SocketAddress::LookupParams&&)#2}::operator()(kj::(anonymous namespace)::SocketAddress::LookupParams&&) const':
async-io-unix.c++:(.text+0x9e9d): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: async-io-unix.c++:(.text+0x9eb8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9f24): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9f83): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: async-io-unix.c++:(.text+0xa1a5): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncIoProviderImpl::newPipeThread(kj::Function<void (kj::AsyncIoProvider&, kj::AsyncIoStream&, kj::WaitScope&)>)':
async-io-unix.c++:(.text+0xa715): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0xa811): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)::{lambda()#1}::operator()() const':
async-io-unix.c++:(.text+0xae2d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io-unix.c++:(.text+0xae44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::SocketNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::String&&)#1}, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0xc3ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc3e8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc474): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc48d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0xc5f9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)':
async-io-unix.c++:(.text+0xc814): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io-unix.c++:(.text+0xcb58): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xcbd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, unsigned long, kj::(anonymous namespace)::SocketAddress::LookupReader::read()::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0xedac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xefd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xf061): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0xf07a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncStreamFd::tryReadInternal(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long, kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0xdfc): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::FdConnectionReceiver::acceptImpl(bool) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x103b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::bindDatagramPort() [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x118b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::listen() [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x11d1): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::SocketAddress::lookupHost(kj::LowLevelAsyncIoProvider&, kj::String, kj::String, unsigned int, kj::_::NetworkFilter&)::{lambda(kj::(anonymous namespace)::SocketAddress::LookupParams&&)#2}::operator()(kj::(anonymous namespace)::SocketAddress::LookupParams&&) const [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x12ef): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1362): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncIoProviderImpl::newPipeThread(kj::Function<void (kj::AsyncIoProvider&, kj::AsyncIoStream&, kj::WaitScope&)>) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x148b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)::{lambda()#1}::operator()() const [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x1588): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::SocketNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::String&&)#1}, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x181d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1850): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x186f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text.unlikely+0x18bb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::ForkBranch<kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x51): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io-unix.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x79): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<unsigned long> >::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeImEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeImEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediateBrokenPromiseNode>::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_26ImmediateBrokenPromiseNodeEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_26ImmediateBrokenPromiseNodeEE11disposeImplEPv]+0x1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> >::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_21AsyncCapabilityStream10ReadResultEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_21AsyncCapabilityStream10ReadResultEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapArrayDisposer::Allocate_<kj::AutoCloseFd, false, false>::destruct(void*)':
async-io-unix.c++:(.text._ZN2kj1_17HeapArrayDisposer9Allocate_INS_11AutoCloseFdELb0ELb0EE8destructEPv[_ZN2kj1_17HeapArrayDisposer9Allocate_INS_11AutoCloseFdELb0ELb0EE8destructEPv]+0x1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::ArrayDisposer::Dispose_<kj::AutoCloseFd, false>::destruct(void*)':
async-io-unix.c++:(.text._ZN2kj13ArrayDisposer8Dispose_INS_11AutoCloseFdELb0EE8destructEPv[_ZN2kj13ArrayDisposer8Dispose_INS_11AutoCloseFdELb0EE8destructEPv]+0x1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
async-io-unix.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED2Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
async-io-unix.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED0Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x7d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncIoStream> > >::disposeImpl(void*) const':
async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_13AsyncIoStreamEEEEEE11disposeImplEPv]+0x90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::_::Void> > kj::heap<kj::_::ImmediatePromiseNode<kj::_::Void>, kj::_::Void>(kj::_::Void&&) [clone .isra.0]':
async-io-unix.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS1_4VoidEEEJS3_EEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIvEC5ENS_1_4VoidE]+0x235): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS1_4VoidEEEJS3_EEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIvEC5ENS_1_4VoidE]+0x264): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort()':
async-unix.c++:(.text+0x42f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x438): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x441): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort()':
async-unix.c++:(.text+0x577): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x583): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text+0x620): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> > >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter> >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x386): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x465): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x479): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE]+0x22b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x17): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x20): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x29): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x73): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x7c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text.unlikely+0x85): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `decltype (reducePromiseType((int*)(decltype(nullptr)), false)) kj::newAdaptedPromise<int, kj::UnixEventPort::ChildExitPromiseAdapter, kj::UnixEventPort::ChildSet&, kj::Maybe<int>&>(kj::UnixEventPort::ChildSet&, kj::Maybe<int>&)':
async-unix.c++:(.text._ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_[_ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_]+0x200): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::Timer::makeTimeoutException()':
timer.c++:(.text+0x31a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter> >::disposeImpl(void*) const':
timer.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::fulfill(kj::_::Void&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o:timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::ThreadState(kj::Function<void ()>)':
thread.c++:(.text+0xe1): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::unref()':
thread.c++:(.text+0x20c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::runThread(void*)':
thread.c++:(.text+0x2de): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: thread.c++:(.text+0x534): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x736): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x751): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread()':
thread.c++:(.text+0x956): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x96d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: thread.c++:(.text+0x975): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::Thread(kj::Function<void ()>)':
thread.c++:(.text+0xab4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `void kj::_::Debug::log<char const (&) [45], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [45], kj::Exception&)':
thread.c++:(.text._ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x72): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread() [clone .cold]':
thread.c++:(.text.unlikely+0x4e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::AsyncCapabilityStream::tryReceiveFd()::ResultHolder>::disposeImpl(void*) const':
async-io.c++:(.text+0x3f4): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo> >::disposeImpl(void*) const':
async-io.c++:(.text+0x4ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead> >::disposeImpl(void*) const':
async-io.c++:(.text+0x55d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::PumpSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x61d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x73d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TwoWayPipeEnd> kj::heap<kj::(anonymous namespace)::TwoWayPipeEnd, kj::Own<kj::(anonymous namespace)::AsyncPipe>, kj::Own<kj::(anonymous namespace)::AsyncPipe> >(kj::Own<kj::(anonymous namespace)::AsyncPipe>&&, kj::Own<kj::(anonymous namespace)::AsyncPipe>&&)':
async-io.c++:(.text+0x15d5): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> > kj::heap<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult>, kj::AsyncCapabilityStream::ReadResult>(kj::AsyncCapabilityStream::ReadResult&&) [clone .isra.0]':
async-io.c++:(.text+0x16ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x18a5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1b0b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1b20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d73): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d88): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x61bb): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::String, unsigned long, kj::(anonymous namespace)::AllReader::readAllText(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x63e4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x6422): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64e2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x66a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x66c1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `non-virtual thunk to kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x679b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0x93ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x93f2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x95e0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ReadSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x9c28): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x9c4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Array<unsigned char>, unsigned long, kj::(anonymous namespace)::AllReader::readAllBytes(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x9d04): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9d42): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9e02): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x9fc9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeWriteEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa272): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa2d4): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeReadEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa6b2): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa714): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TwoWayPipeEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa78a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa814): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite> >::disposeImpl(void*) const':
async-io.c++:(.text+0xb18d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::newOneWayPipe(kj::Maybe<unsigned long>)':
async-io.c++:(.text+0xb4fb): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xb5c3): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TeeBranch> kj::heap<kj::(anonymous namespace)::TeeBranch, kj::Own<kj::(anonymous namespace)::AsyncTee> >(kj::Own<kj::(anonymous namespace)::AsyncTee>&&)':
async-io.c++:(.text+0xc1e6): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::TeeBranch::tryTee(unsigned long)':
async-io.c++:(.text+0xc97d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xd702): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xd70e): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xd718): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdb7a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdb86): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xdb90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdc4d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdc61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::abortRead()':
async-io.c++:(.text+0xdcd6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdceb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::abortRead()':
async-io.c++:(.text+0xddc6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdde6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe276): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe2d6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe309): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::abortRead()':
async-io.c++:(.text+0xe3a6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xe3bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling()':
async-io.c++:(.text+0xfac8): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xfb9d): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee()':
async-io.c++:(.text+0x10ac0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&)':
async-io.c++:(.text+0x10dda): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x10e1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x10e86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
async-io.c++:(.text+0x10fb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x10fcd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x11066): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1107d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >)':
async-io.c++:(.text+0x11116): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1112d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x111b6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x111cd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::pumpTo(kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x11256): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1126d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryRead(void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x112f6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1130d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithStreams(void*, unsigned long, unsigned long, kj::Own<kj::AsyncCapabilityStream>*, unsigned long)':
async-io.c++:(.text+0x11397): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x113c8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveStream()::{lambda(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&)#1}::operator()(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&) const':
async-io.c++:(.text+0x114e9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11518): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11547): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11578): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const':
async-io.c++:(.text+0x11608): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1164a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1167b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x116f7): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11728): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const':
async-io.c++:(.text+0x121bf): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x123a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x123f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x124ab): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x12511): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12519): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12559): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x12d8a): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x12da1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TeeBranch>::disposeImpl(void*) const':
async-io.c++:(.text+0x12e6b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0x12e87): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x13222): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x13239): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x152f2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x152ff): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x1657c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1658f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const::{lambda(unsigned long)#2}::operator()(unsigned long)':
async-io.c++:(.text+0x16b27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x16b6d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long)':
async-io.c++:(.text+0x1703e): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1704a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x17054): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x17796): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x177c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17a5d): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x17c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17cd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x1bb16): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbfb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1bc29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1c985): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1c995): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1c9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Own<kj::AsyncOutputStream>, kj::(anonymous namespace)::PromisedAsyncOutputStream::PromisedAsyncOutputStream(kj::Promise<kj::Own<kj::AsyncOutputStream> >)::{lambda(kj::Own<kj::AsyncOutputStream>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1ca78): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cab8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1caf1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1cb37): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cded): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1cdfd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ce09): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1ce48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cee6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cefd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cf33): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cfff): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1d00f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d01d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1d05c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d104): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d120): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d152): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)::{lambda()#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d71c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d75c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::AsyncTee::pull()::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1dc1e): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1dcb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1dcdf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dd5d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ddc5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dddc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1de11): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1e2eb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#2}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x205d3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x205e6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x206af): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207e3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#4}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20d0c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x20d4a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(void const*, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20f43): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x20f56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2101f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x210cc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x21103): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2161c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2165a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x242f9): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x24308): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x24315): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2482c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2486c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248b6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248cf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x24949): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x268b2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x268bc): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x268c4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::LimitedInputStream::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x26dbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26dfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e46): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x26ee9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x275b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x275d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x275de): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27632): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276bc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27788): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x277a2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x277ae): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27806): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2788c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::tryRead(void*, unsigned long, unsigned long)::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x27e29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a18b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a1c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a288): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a2d2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a30c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a32e): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a358): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a370): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a3a0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a3ea): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a424): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a446): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a618): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a654): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a6dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a70d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a829): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2a840): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a859): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a889): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a9f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2aa5e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b181): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b191): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b19d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x2b25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b31c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b353): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::tryRead(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b3e3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b3f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b4bf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b57c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b5b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b653): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b666): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b72f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b7dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b813): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult> >(kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b8b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b8dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b9b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2ba6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2baa3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2bf31): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2bf9a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(kj::Promise<unsigned long>)#1}::operator()(kj::Promise<unsigned long>) const::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c093): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2c0a6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c22c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c263): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPump::pump()::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c77c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2c7ba): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling() [clone .cold]':
async-io.c++:(.text.unlikely+0x215a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee() [clone .cold]':
async-io.c++:(.text.unlikely+0x24bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x25c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x25f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2610): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >) [clone .cold]':
async-io.c++:(.text.unlikely+0x262a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2644): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const [clone .cold]':
async-io.c++:(.text.unlikely+0x2740): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2759): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const [clone .cold]':
async-io.c++:(.text.unlikely+0x29b4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}::operator()(kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ad3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ba6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x2bc7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((unsigned long*)(decltype(nullptr)), false)) kj::newAdaptedPromise<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom, kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&>(kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::AsyncCapabilityStream::ReadResult*)(decltype(nullptr)), false)) kj::newAdaptedPromise<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> > >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>&&, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> >&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2d90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2e1c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2fbd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const> >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3023): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>, decltype(nullptr)>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&&, decltype(nullptr)&&) [clone .constprop.0] [clone .cold]':
async-io.c++:(.text.unlikely+0x3072): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3117): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x3170): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x326c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&) [clone .cold]':
async-io.c++:(.text.unlikely+0x33c3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x344c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::AsyncInputStream::read(void*, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x3c94): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4793): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47a8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47bd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47ef): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4815): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4821): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4838): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x486b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4902): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x491b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4938): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4951): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x497d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x499d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x68): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncCapabilityStream> > >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> > >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEEEE11disposeImplEPv]+0x8d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEEEE11disposeImplEPv]+0xb3): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ImmediatePromiseNode<kj::AutoCloseFd>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x86): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x245): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x25f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x280): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::fulfill(kj::_::Void&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x91): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0xae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::reject(kj::Exception&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x1f5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x241): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> > kj::heap<kj::_::ImmediatePromiseNode<kj::AutoCloseFd>, kj::AutoCloseFd>(kj::AutoCloseFd&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x8f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xb3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xe9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x118): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x137): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x17a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x18a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1a8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1c5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> > > kj::heap<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> >, kj::Canceler&, kj::Promise<unsigned long> >(kj::Canceler&, kj::Promise<unsigned long>&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_]+0x16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::_::Void>::operator=(kj::_::ExceptionOr<kj::_::Void>&&)':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE]+0x7d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x48): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x5b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x3b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Promise<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x5a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> > >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x5a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation)':
mutex.c++:(.text+0x255): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: mutex.c++:(.text+0x268): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&)':
mutex.c++:(.text+0x3a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: mutex.c++:(.text+0x5fa): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: mutex.c++:(.text+0x834): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::wait(kj::_::Mutex::Predicate&, kj::Maybe<kj::Quantity<long, kj::_::NanosecondLabel> >, kj::NoopSourceLocation)':
mutex.c++:(.text+0xac5): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::HeapDisposer<kj::Exception>::disposeImpl(void*) const':
mutex.c++:(.text._ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv]+0xd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation) [clone .cold]':
mutex.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&) [clone .cold]':
mutex.c++:(.text.unlikely+0x68): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const':
async.c++:(.text+0x3c7): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x3d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ImmediateBrokenPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xb48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::(anonymous namespace)::YieldHarderPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xdee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xe08): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xfe0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x104e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x14f9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1739): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1752): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1924): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)::{lambda()#4}::operator()() const':
async.c++:(.text+0x1968): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1ba9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1bc6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2008): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x2240): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x225e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&)':
async.c++:(.text+0x24db): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async.c++:(.text+0x24eb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler()':
async.c++:(.text+0x2548): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x255d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadPaf::unfulfilledException()':
async.c++:(.text+0x28ae): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f22): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x3179): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3192): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x33e7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3401): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x3438): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkBranchBase::releaseHub(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x4164): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x43a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x43ba): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x4594): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::Branch::getPart()':
async.c++:(.text+0x4823): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TraceBuilder::toString()':
async.c++:(.text+0x4a26): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4a34): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::getAsyncTrace()':
async.c++:(.text+0x4bdd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4beb): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::fire()':
async.c++:(.text+0x5149): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x53b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x53ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::StringPtr)':
async.c++:(.text+0x5788): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x579f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::setDisconnected()':
async.c++:(.text+0x59d0): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x59df): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::EventPort::wake() const':
async.c++:(.text+0x5d4b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5d57): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0x5d61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Executor::getLoop() const':
async.c++:(.text+0x5e67): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5e73): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkHubBase::fire()':
async.c++:(.text+0x8848): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8ae1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x8afe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ExclusiveJoinPromiseNode::Branch::fire()':
async.c++:(.text+0x8d3a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8d8e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::EagerPromiseNodeBase::fire()':
async.c++:(.text+0x9247): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x94a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x94c6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run()':
async.c++:(.text+0x9fb9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa252): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::run()':
async.c++:(.text+0xa5a5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa9ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xaa01): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire()':
async.c++:(.text+0xae61): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xaeb5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xb387): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb3a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb60f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb628): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb640): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const':
async.c++:(.text+0xc310): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0xc32e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)':
async.c++:(.text+0xc7f5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xca06): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xca2b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f50): undefined reference to `kj::Exception::addTrace(void*)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const [clone .cold]':
async.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&) [clone .cold]':
async.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler() [clone .cold]':
async.c++:(.text.unlikely+0x24): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::DummyFunctor, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x7f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x1a4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run() [clone .cold]':
async.c++:(.text.unlikely+0xbc5): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text.unlikely+0xcdc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire() [clone .cold]':
async.c++:(.text.unlikely+0xdd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xdfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xe48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const [clone .cold]':
async.c++:(.text.unlikely+0x1091): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x11e5): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)::{lambda()#1}::operator()() const':
async.c++:(.text._ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv[_ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv]+0xd): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)':
async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x5a): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x104): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `void kj::_::Debug::log<char const (&) [39], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [39], kj::Exception&)':
async.c++:(.text._ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x4a): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::TaskSet::Task::fire()':
async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x4e): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x314): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x333): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x554): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x569): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x656): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom> >::disposeImpl(void*) const':
http.c++:(.text+0xe0d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpTo> >::disposeImpl(void*) const':
http.c++:(.text+0xead): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend> >::disposeImpl(void*) const':
http.c++:(.text+0x1a2d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::ConnectionCounter, kj::_::PromiseAndFulfillerAdapter<kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::ConnectionCounter> > >::disposeImpl(void*) const':
http.c++:(.text+0x200d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::Maybe<kj::Exception>::operator=(kj::Maybe<kj::Exception>&&) [clone .isra.0]':
http.c++:(.text+0x2480): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x255e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::NetworkAddressHttpClient::RefcountedClient::~RefcountedClient()':
http.c++:(.text+0x73b4): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http.c++:(.text+0x741b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x7434): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::HttpClientAdapter::DelayedEofInputStream::wrap<unsigned long>(unsigned long, kj::Promise<unsigned long>)::{lambda(kj::Exception&&)#2}::operator()(kj::Exception&&) const::{lambda()#1}, kj::_::PropagateException> >::disposeImpl(void*) const':
http.c++:(.text+0x9af3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::OneOf<kj::HttpHeaders::Request, kj::HttpHeaders::ProtocolError>, kj::ArrayPtr<char>, kj::(anonymous namespace)::HttpInputStreamImpl::readRequestHeaders()::{lambda(kj::ArrayPtr<char>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0xd696): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0xd6d4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0xd70a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::taskFailed(kj::Exception&&)':
http.c++:(.text+0xf5c5): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpInputStreamImpl::abortRead()':
http.c++:(.text+0xf6c1): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0xf6d6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketImpl::receive(unsigned long)::{lambda(unsigned long)#3}::operator()(unsigned long) const':
http.c++:(.text+0xfac7): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0xfad3): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0xfadd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive>::get(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x10573): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x105b0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive>::reject(kj::Exception&&) [clone .part.0]':
http.c++:(.text+0x107c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10853): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x10868): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::receive(unsigned long)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>)#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::receive(unsigned long)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x10c04): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x10c15): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10c3b): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x10ce3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10d53): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10e4b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10e81): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x10f03): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x10f39): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::abort()':
http.c++:(.text+0x11ba6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x11bbb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::abort()':
http.c++:(.text+0x11d06): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x11d1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend::abort()':
http.c++:(.text+0x11df6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x11e0b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient>, kj::Own<kj::NetworkAddress>, kj::(anonymous namespace)::NetworkHttpClient::getClient(kj::Url&)::{lambda(kj::Own<kj::NetworkAddress>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x13664): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x136a0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1372e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x13774): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x139ab): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServerErrorHandler::handleApplicationError(kj::Exception, kj::Maybe<kj::HttpService::Response&>)':
http.c++:(.text+0x17df8): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x18005): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x18071): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x18181): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::disconnect()':
http.c++:(.text+0x18b9b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x18bb0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::receive(unsigned long)':
http.c++:(.text+0x1d5e6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d5fd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Disconnected::receive(unsigned long)':
http.c++:(.text+0x1d686): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d69d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda()#3}::operator()() const':
http.c++:(.text+0x1d75d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d774): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpOutputStream::finishBody()':
http.c++:(.text+0x1d877): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1d8c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::HttpFixedLengthEntityWriter::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x1de4c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1de8a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ded4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1deed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x1df81): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpNullEntityWriter::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
http.c++:(.text+0x1e083): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1e09a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpNullEntityWriter::write(void const*, unsigned long)':
http.c++:(.text+0x1e123): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1e13a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpOutputStream::abortBody()':
http.c++:(.text+0x1e1e2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1e234): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::HttpChunkedEntityWriter::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x1eb8c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ebca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ec14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ec2d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x1ecb9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}>(kj::_::ReturnType_&&)':
http.c++:(.text+0x1edaa): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http.c++:(.text+0x1edeb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1ee56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}::operator()() const::{lambda()#1}::operator()() const':
http.c++:(.text+0x1ef8f): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1efa6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::tryPumpFrom(kj::WebSocket&)':
http.c++:(.text+0x1f03a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f069): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::pumpTo(kj::WebSocket&)':
http.c++:(.text+0x1f0f6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f10d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::disconnect()':
http.c++:(.text+0x1f196): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f1ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::close(unsigned short, kj::StringPtr)':
http.c++:(.text+0x1f236): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f24d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::send(kj::ArrayPtr<char const>)':
http.c++:(.text+0x1f2d6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f2ed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketPipeImpl::Aborted::send(kj::ArrayPtr<unsigned char const>)':
http.c++:(.text+0x1f376): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x1f38d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::ConnectionCounter, kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::Maybe<unsigned long>)::{lambda(kj::(anonymous namespace)::ConcurrencyLimitingHttpClient::ConnectionCounter&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x1fb58): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1fb94): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1fc66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x1fc89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x1fe09): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpInputStreamImpl::readHeader(kj::(anonymous namespace)::HttpInputStreamImpl::HeaderType, unsigned long, unsigned long)':
http.c++:(.text+0x21d5c): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x21db2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::WebSocketImpl::receive(unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
http.c++:(.text+0x22f89): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x22f9c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x23017): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2302a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, kj::_::Void, kj::CaptureByMove<kj::CaptureByMove<kj::(anonymous namespace)::PromiseNetworkAddressHttpClient::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::Maybe<unsigned long>)::{lambda(kj::HttpHeaders&&, kj::String&&)#1}, kj::HttpHeaders>, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x24bf9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x24c31): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x24cce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x24ce5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x24e68): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpChunkedEntityReader::tryReadInternal(void*, unsigned long, unsigned long, unsigned long)::{lambda(unsigned long)#2}::operator()(unsigned long) const':
http.c++:(.text+0x2c367): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2c373): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x2c37d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::(anonymous namespace)::HttpFixedLengthEntityReader::tryReadInternal(void*, unsigned long, unsigned long, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
http.c++:(.text+0x2c475): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2c481): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x2c48b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::HttpFixedLengthEntityWriter::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#2}::operator()(unsigned long) const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x2cd5c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2cd9a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2cde4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2cdfd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x2ce89): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::WebSocketImpl::receive(unsigned long)::{lambda(unsigned long)#3}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x2e2a9): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x2e2b8): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x2e2c5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient>, kj::(anonymous namespace)::PromiseNetworkAddressHttpClient::PromiseNetworkAddressHttpClient(kj::Promise<kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient> >)::{lambda(kj::Own<kj::(anonymous namespace)::NetworkAddressHttpClient>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x2e7dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2e800): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2e846): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x2e869): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x2e901): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::pumpTo(kj::WebSocket&)::{lambda()#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpFrom::pumpTo(kj::WebSocket&)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x30070): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x30081): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x300a7): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x300de): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x30101): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedPumpTo::tryPumpFrom(kj::WebSocket&)::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3065c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x30680): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x30699): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x306b9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::HttpClientAdapter::WebSocketResponseImpl::setPromise(kj::Promise<void>)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x33bc8): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x33bd9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::HttpClientAdapter::ResponseImpl::send(unsigned int, kj::StringPtr, kj::HttpHeaders const&, kj::Maybe<unsigned long>)::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x340cc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x340f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x34109): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x34129): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x34189): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::HttpClientAdapter::ResponseImpl::setPromise(kj::Promise<void>)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x34318): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text+0x34329): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::HttpClientAdapter::DelayedEofInputStream::wrap<unsigned long>(unsigned long, kj::Promise<unsigned long>)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::HttpClientAdapter::DelayedEofInputStream::wrap<unsigned long>(unsigned long, kj::Promise<unsigned long>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x34431): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x344f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3462b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x34661): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x3476b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda()#3}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3820b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x38220): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, unsigned long, kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda(unsigned long)#4}, kj::(anonymous namespace)::WebSocketImpl::optimizedPumpTo(kj::(anonymous namespace)::WebSocketImpl&)::{lambda(kj::Exception&&)#5}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3835c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http.c++:(.text+0x383d3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x383f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::WebSocketImpl::queuePong(kj::Array<unsigned char>)::{lambda(kj::Array<unsigned char>)#1}, kj::Array<unsigned char> >, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x38994): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x389b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x389ca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x38fd4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::WebSocket::pumpTo(kj::WebSocket&)::{lambda()#1}::operator()() const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3a7fe): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text+0x3a813): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::pumpWebSocketLoop(kj::WebSocket&, kj::WebSocket&)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&)#1}::operator()(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3ad94): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3adb1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3adca): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::pumpWebSocketLoop(kj::WebSocket&, kj::WebSocket&)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&)#1}::operator()(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>&&) const::{lambda()#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3b374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x3b391): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::tryPumpFrom(kj::WebSocket&)::{lambda(kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close>)#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedReceive::tryPumpFrom(kj::WebSocket&)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3bcdd): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x3bcee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3bd95): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend::pumpTo(kj::WebSocket&)::{lambda()#1}, kj::(anonymous namespace)::WebSocketPipeImpl::BlockedSend::pumpTo(kj::WebSocket&)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3bf24): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text+0x3bf35): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3bfbf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, bool, kj::(anonymous namespace)::HttpClientImpl::watchForClose()::{lambda(bool)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http.c++:(.text+0x3c393): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3c3ae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text+0x3c3c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text+0x3c92d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::abort()':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x10): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x1a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x22): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5abortEv]+0x36): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket>::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerIZNS_10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEE15BrokenWebSocketE11disposeImplEPv[_ZNK2kj1_12HeapDisposerIZNS_10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEE15BrokenWebSocketE11disposeImplEPv]+0x15): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<bool> >::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeIbEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeIbEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::Own<kj::_::ImmediatePromiseNode<bool> > kj::heap<kj::_::ImmediatePromiseNode<bool>, bool>(bool&&) [clone .isra.0]':
http.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeIbEEJbEEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIbEC5Eb]+0xb6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeIbEEJbEEENS_3OwnIT_EEDpOT0_.isra.0[_ZN2kj7PromiseIbEC5Eb]+0x295): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `void kj::_::Debug::log<kj::Exception&>(char const*, int, kj::LogSeverity, char const*, kj::Exception&)':
http.c++:(.text._ZN2kj1_5Debug3logIJRNS_9ExceptionEEEEvPKciNS_11LogSeverityES6_DpOT_[_ZN2kj1_5Debug3logIJRNS_9ExceptionEEEEvPKciNS_11LogSeverityES6_DpOT_]+0x20): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::SplitBranch<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, 1ul>::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE]+0xa1): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm1EE3getERNS0_16ExceptionOrValueE]+0xc9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::Promise<void>, kj::_::PromiseAndFulfillerAdapter<kj::Promise<void> > >::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x263): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x2a0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::Promise<void>, kj::_::PromiseAndFulfillerAdapter<kj::Promise<void> > > >::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv]+0x7d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_7PromiseIvEENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv]+0xa4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient8ResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0xf4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::SplitBranch<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> >, 0ul>::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE]+0x99): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE[_ZN2kj1_11SplitBranchINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEELm0EE3getERNS0_16ExceptionOrValueE]+0xb1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::HttpClient::WebSocketResponse, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::WebSocketResponse> >::get(kj::_::ExceptionOrValue&)':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x11c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE3getERNS0_16ExceptionOrValueE]+0x158): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::HttpClient::WebSocketResponse, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::WebSocketResponse> > >::disposeImpl(void*) const':
http.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS4_EEEEE11disposeImplEPv]+0x6d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::AdapterPromiseNode<kj::HttpClient::WebSocketResponse, kj::_::PromiseAndFulfillerAdapter<kj::HttpClient::WebSocketResponse> >::reject(kj::Exception&&) [clone .part.0]':
http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE]+0x1f7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS_10HttpClient17WebSocketResponseENS0_26PromiseAndFulfillerAdapterIS3_EEE6rejectEONS_9ExceptionE]+0x2e4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)':
http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x60): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x13c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x178): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x596): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x5b6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x5ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x623): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x637): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE[_ZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrE]+0x643): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::receive(unsigned long)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket7receiveEm]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::whenAborted()':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket11whenAbortedEv]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::disconnect()':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket10disconnectEv]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::close(unsigned short, kj::StringPtr)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket5closeEtS2_]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::send(kj::ArrayPtr<char const>)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKcEE]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::HttpServer::Connection::sendWebSocketError(kj::StringPtr)::BrokenWebSocket::send(kj::ArrayPtr<unsigned char const>)':
http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE]+0x14): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE]+0x27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE[_ZZN2kj10HttpServer10Connection18sendWebSocketErrorENS_9StringPtrEEN15BrokenWebSocket4sendENS_8ArrayPtrIKhEE]+0x3f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::ExceptionOr<kj::_::Tuple<kj::Own<kj::AsyncOutputStream>, kj::Promise<kj::HttpClient::Response> > >::~ExceptionOr()':
http.c++:(.text._ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED5Ev]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http.c++:(.text._ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS0_5TupleIJNS_3OwnINS_17AsyncOutputStreamEEENS_7PromiseINS_10HttpClient8ResponseEEEEEEED5Ev]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o: in function `kj::_::ExceptionOr<kj::HttpClient::Response>::~ExceptionOr()':
http.c++:(.text._ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED2Ev[_ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http.o:http.c++:(.text._ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED2Ev[_ZN2kj1_11ExceptionOrINS_10HttpClient8ResponseEED5Ev]+0x5a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::BrokenHttpService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const':
http-socketpair-test.c++:(.text+0x1c3d): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x1c50): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const::{lambda()#1}::operator()() const':
http-socketpair-test.c++:(.text+0x78d3): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x78ea): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase299::run()':
http-socketpair-test.c++:(.text+0x8683): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x86d8): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x872c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8780): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x89cd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8a00): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8a30): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8c35): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8c68): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8c98): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8e9d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8ed0): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x8f07): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x9105): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x9134): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x9164): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2543::run()':
http-socketpair-test.c++:(.text+0x948e): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x96f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x9b49): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2522::run()':
http-socketpair-test.c++:(.text+0x9cf2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x9f55): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xa389): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2501::run()':
http-socketpair-test.c++:(.text+0xa532): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xa795): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xabd9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase3132::run()':
http-socketpair-test.c++:(.text+0xaed9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xaf36): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xaf93): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xafef): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb0bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb0ee): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb11e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb14e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb181): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb1b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb1de): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb211): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb248): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb276): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb2a5): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xb2d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::Own<kj::NetworkAddress>, kj::Own<kj::NetworkAddress>, kj::(anonymous namespace)::ConnectionCountingNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::Own<kj::NetworkAddress>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text+0xbbdc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xbc18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xbca6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xbcec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text+0xbe3f): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::DummyService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)':
http-socketpair-test.c++:(.text+0xc576): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0xc589): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2890::run()':
http-socketpair-test.c++:(.text+0x12ff8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2820::run()':
http-socketpair-test.c++:(.text+0x134f8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2691::run()':
http-socketpair-test.c++:(.text+0x136aa): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x138b5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x13bf8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2662::run()':
http-socketpair-test.c++:(.text+0x14068): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2720::run()':
http-socketpair-test.c++:(.text+0x14538): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2592::run()':
http-socketpair-test.c++:(.text+0x14a08): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text+0x14ed8): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::doDelayedCompletionWebSocketTest(bool, bool)':
http-socketpair-test.c++:(.text+0x15a7c): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x15a95): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x15af6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x15b55): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x15b7b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x15baa): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase1035::run()':
http-socketpair-test.c++:(.text+0x18c93): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x18d4c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x18f6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x18f9e): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x18fc8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x18ff3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x19022): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x1904c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2480::run()':
http-socketpair-test.c++:(.text+0x19558): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x197bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x19ac1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2088::run()':
http-socketpair-test.c++:(.text+0x1f02d): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x1f3d3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x1f42c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2061::run()':
http-socketpair-test.c++:(.text+0x1f8bf): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x1fac9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x1fb21): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase1544::run()':
http-socketpair-test.c++:(.text+0x20089): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x204ea): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x20520): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase3961::run()':
http-socketpair-test.c++:(.text+0x241f8): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x245f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x2465e): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2946::run()':
http-socketpair-test.c++:(.text+0x2db39): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::doDelayedCompletionTest(bool, kj::Maybe<unsigned long>)':
http-socketpair-test.c++:(.text+0x2f7ac): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x2f7c4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x2f81a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x2f8a3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x2f8d2): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x2f902): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase1582::run()':
http-socketpair-test.c++:(.text+0x3658a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x36a32): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x36a70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::String, kj::(anonymous namespace)::TestCase3854::run()::{lambda(bool, unsigned int)#1}::operator()(bool, unsigned int) const::{lambda(kj::String)#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text+0x389ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x38c19): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x38c54): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x38c77): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text+0x38d87): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text+0x4f991): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x4f9a6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::Array<unsigned char>, kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text+0x4ff24): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x4ff4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x4ff74): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x4ff99): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text+0x505c4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::Array<unsigned char>, kj::(anonymous namespace)::BrokenHttpService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text+0x50704): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x50717): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::TestCase2275::run()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text+0x50ca4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x50ccd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x50ce6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x50d09): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text+0x512f4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2773::run()':
http-socketpair-test.c++:(.text+0x5b75a): undefined reference to `kj::_::LogExpectation::LogExpectation(kj::LogSeverity, kj::StringPtr)'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x5b8d0): undefined reference to `kj::_::LogExpectation::~LogExpectation()'
/usr/bin/ld: http-socketpair-test.c++:(.text+0x5b9e8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::BrokenHttpService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const [clone .cold]':
http-socketpair-test.c++:(.text.unlikely+0x200): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::PartialResponseService::request(kj::HttpMethod, kj::StringPtr, kj::HttpHeaders const&, kj::AsyncInputStream&, kj::HttpService::Response&)::{lambda(kj::Array<unsigned char>&&)#1}::operator()(kj::Array<unsigned char>&&) const::{lambda()#1}::operator()() const [clone .cold]':
http-socketpair-test.c++:(.text.unlikely+0x16bc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase299::run() [clone .cold]':
http-socketpair-test.c++:(.text.unlikely+0x18ab): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text.unlikely+0x18e0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text.unlikely+0x18f7): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::(anonymous namespace)::TestCase2773::run() [clone .cold]':
http-socketpair-test.c++:(.text.unlikely+0xa094): undefined reference to `kj::_::LogExpectation::~LogExpectation()'
/usr/bin/ld: http-socketpair-test.c++:(.text.unlikely+0xa119): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text.unlikely+0xa130): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<void>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x3c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::ExceptionOr<kj::String>::~ExceptionOr()':
http-socketpair-test.c++:(.text._ZN2kj1_11ExceptionOrINS_6StringEED2Ev[_ZN2kj1_11ExceptionOrINS_6StringEED5Ev]+0x63): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::String>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE]+0x3d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_6StringEE4waitERNS_9WaitScopeE]+0xac): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::HttpClient::Response>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE]+0x45): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE]+0xa6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient8ResponseEE4waitERNS_9WaitScopeE]+0xcc): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<unsigned long>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseImE4waitERNS_9WaitScopeE[_ZN2kj7PromiseImE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<bool>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseIbE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIbE4waitERNS_9WaitScopeE]+0xc4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::HttpInputStream::Message>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x3d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0xac): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x136): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_15HttpInputStream7MessageEE4waitERNS_9WaitScopeE]+0x14e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::Own<kj::NetworkAddress> >::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_3OwnINS_14NetworkAddressEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_3OwnINS_14NetworkAddressEEEE4waitERNS_9WaitScopeE]+0x50): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_3OwnINS_14NetworkAddressEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_3OwnINS_14NetworkAddressEEEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_3OwnINS_14NetworkAddressEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_3OwnINS_14NetworkAddressEEEE4waitERNS_9WaitScopeE]+0xcc): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::ExceptionOr<kj::Array<unsigned char> >::~ExceptionOr()':
http-socketpair-test.c++:(.text._ZN2kj1_11ExceptionOrINS_5ArrayIhEEED2Ev[_ZN2kj1_11ExceptionOrINS_5ArrayIhEEED5Ev]+0x63): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::Array<unsigned char> >::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE]+0x3d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE]+0x86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5ArrayIhEEE4waitERNS_9WaitScopeE]+0xac): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::Own<kj::AsyncIoStream> > >::~ExceptionOr()':
http-socketpair-test.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_13AsyncIoStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_13AsyncIoStreamEEEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_13AsyncIoStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_13AsyncIoStreamEEEEEED5Ev]+0x5a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::String kj::str<kj::Exception&>(kj::Exception&)':
http-socketpair-test.c++:(.text._ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_]+0xd): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::HttpClient::WebSocketResponse>::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0x46): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0xe8): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0xf6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_10HttpClient17WebSocketResponseEE4waitERNS_9WaitScopeE]+0x289): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::Promise<kj::OneOf<kj::String, kj::Array<unsigned char>, kj::WebSocket::Close> >::wait(kj::WaitScope&)':
http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE]+0x43): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE]+0x12a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE[_ZN2kj7PromiseINS_5OneOfIJNS_6StringENS_5ArrayIhEENS_9WebSocket5CloseEEEEE4waitERNS_9WaitScopeE]+0x14c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `void kj::_::Debug::log<char const (&) [76], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [76], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-socketpair-test.c++:(.text._ZN2kj1_5Debug3logIJRA76_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA76_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `void kj::_::Debug::log<char const (&) [83], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [83], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-socketpair-test.c++:(.text._ZN2kj1_5Debug3logIJRA83_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA83_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `void kj::_::Debug::log<char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-socketpair-test.c++:(.text._ZN2kj1_5Debug3logIJRA78_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA78_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `void kj::_::Debug::log<char const (&) [84], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [84], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&)':
http-socketpair-test.c++:(.text._ZN2kj1_5Debug3logIJRA84_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_[_ZN2kj1_5Debug3logIJRA84_KcRNS0_15DebugExpressionIbEERA56_S3_RNS_9ExceptionEEEEvPS3_iNS_11LogSeverityESD_DpOT_]+0x9c): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbd00): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbd08): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbd70): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbd78): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbdd8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbde0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbec8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbed0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbf30): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbf38): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbfb0): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xbfb8): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc018): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc020): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc0b0): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc0b8): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc118): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc120): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc6a8): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:(.rodata+0xc6b0): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::String kj::str<kj::_::DebugComparison<kj::Exception::Type, kj::Exception::Type>&>(kj::_::DebugComparison<kj::Exception::Type, kj::Exception::Type>&)':
http-socketpair-test.c++:(.text._ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_]+0x11): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_1_15DebugComparisonINS_9Exception4TypeES4_EEEEENS_6StringEDpOT_]+0x21): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception::Type)'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Array<unsigned char>, kj::Promise<kj::Array<unsigned char> >::ignoreResult()::{lambda(kj::Array<unsigned char>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
http-socketpair-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x4c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x6f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x731): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x754): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: http-socketpair-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/compat/http-socketpair-test.o:http-socketpair-test.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidENS_5ArrayIhEEZNS_7PromiseIS4_E12ignoreResultEvEUlOS4_E_NS0_18PropagateExceptionEE7getImplERNS0_16ExceptionOrValueE]+0x819): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd()':
list.c++:(.text+0x88): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x94): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent()':
list.c++:(.text+0x138): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x144): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList()':
list.c++:(.text+0x1e8): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x1f4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList()':
list.c++:(.text+0x298): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x2a4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd() [clone .cold]':
list.c++:(.text.unlikely+0x18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent() [clone .cold]':
list.c++:(.text.unlikely+0x44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList() [clone .cold]':
list.c++:(.text.unlikely+0x70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList() [clone .cold]':
list.c++:(.text.unlikely+0x9c): undefined reference to `kj::Exception::~Exception()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/async-unix-xthread-test.o
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::ThreadState(kj::Function<void ()>)':
thread.c++:(.text+0xe1): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::unref()':
thread.c++:(.text+0x20c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::runThread(void*)':
thread.c++:(.text+0x2de): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: thread.c++:(.text+0x534): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x736): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x751): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread()':
thread.c++:(.text+0x956): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x96d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: thread.c++:(.text+0x975): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::Thread(kj::Function<void ()>)':
thread.c++:(.text+0xab4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `void kj::_::Debug::log<char const (&) [45], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [45], kj::Exception&)':
thread.c++:(.text._ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x72): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread() [clone .cold]':
thread.c++:(.text.unlikely+0x4e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::Timer::makeTimeoutException()':
timer.c++:(.text+0x31a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter> >::disposeImpl(void*) const':
timer.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::fulfill(kj::_::Void&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o:timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort()':
async-unix.c++:(.text+0x42f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x438): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x441): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort()':
async-unix.c++:(.text+0x577): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x583): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text+0x620): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> > >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter> >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x386): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x465): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x479): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE]+0x22b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x17): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x20): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x29): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x73): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x7c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text.unlikely+0x85): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `decltype (reducePromiseType((int*)(decltype(nullptr)), false)) kj::newAdaptedPromise<int, kj::UnixEventPort::ChildExitPromiseAdapter, kj::UnixEventPort::ChildSet&, kj::Maybe<int>&>(kj::UnixEventPort::ChildSet&, kj::Maybe<int>&)':
async-unix.c++:(.text._ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_[_ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_]+0x200): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x22): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
test.c++:(.text+0x17b): undefined reference to `kj::getStackTrace(kj::ArrayPtr<void*>, unsigned int)'
/usr/bin/ld: test.c++:(.text+0x2cd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/test.o: in function `kj::(anonymous namespace)::TestExceptionCallback::~TestExceptionCallback()':
test.c++:(.text+0x8): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::_::RunnableImpl<kj::TestRunner::run()::{lambda()#1}>::run()':
test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x14): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x4d): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: test.c++:(.text._ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv[_ZN2kj1_12RunnableImplIZNS_10TestRunner3runEvEUlvE_E3runEv]+0x67): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::write(kj::TestRunner::Color, kj::StringPtr, kj::StringPtr) [clone .isra.0]':
test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1b3): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1bd): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x1c7): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner5writeENS0_5ColorENS_9StringPtrES2_.isra.0[_ZN2kj10TestRunner3runEv]+0x298): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/test.o: in function `kj::TestRunner::run()':
test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x275): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x72b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x75b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0x7e1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: test.c++:(.text._ZN2kj10TestRunner3runEv[_ZN2kj10TestRunner3runEv]+0xa38): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x70): undefined reference to `kj::ExceptionCallback::onRecoverableException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x78): undefined reference to `kj::ExceptionCallback::onFatalException(kj::Exception&&)'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x88): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/test.o:(.rodata+0x90): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `non-virtual thunk to kj::_::XThreadEventImpl<kj::(anonymous namespace)::TestCase473::run()::{lambda()#4}::operator()() const::{lambda()#5}, kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-unix-xthread-test.c++:(.text+0x1097): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x10a8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `non-virtual thunk to kj::_::XThreadEventImpl<kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}, kj::Promise<void> >::get(kj::_::ExceptionOrValue&)':
async-unix-xthread-test.c++:(.text+0x1327): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1338): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `non-virtual thunk to kj::_::XThreadEventImpl<kj::(anonymous namespace)::TestCase473::run()::{lambda()#4}::operator()() const::{lambda()#4}, kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-unix-xthread-test.c++:(.text+0x15b7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o:async-unix-xthread-test.c++:(.text+0x15c8): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase154::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase154::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-unix-xthread-test.c++:(.text+0xe205): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xe259): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#3}::ReturnType_<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#3}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#3}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-unix-xthread-test.c++:(.text+0xe315): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xe369): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase52::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase52::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-unix-xthread-test.c++:(.text+0xe425): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xe479): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#1}::ReturnType_<kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_::UnwrapPromise_&&) const':
async-unix-xthread-test.c++:(.text+0xe535): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xe589): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-unix-xthread-test.c++:(.text+0xe654): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xe6a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::UnwrapPromise_<decltype (reducePromiseType(({lambda()#2}::ReturnType_<kj::(anonymous namespace)::TestCase725::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}, void>::Type*)(decltype(nullptr)), false))>::Type kj::Executor::executeSync<kj::(anonymous namespace)::TestCase725::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}>(kj::_&&) const':
async-unix-xthread-test.c++:(.text+0xe784): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xe7d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase913::run()':
async-unix-xthread-test.c++:(.text+0xf5d2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0xf5ed): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase313::run()':
async-unix-xthread-test.c++:(.text+0x10099): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x101f9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase473::run()':
async-unix-xthread-test.c++:(.text+0x10859): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x10937): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x10c09): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x10c21): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase213::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}::operator()() const':
async-unix-xthread-test.c++:(.text+0x11435): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1144c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase154::run()::{lambda()#2}::operator()() const::{lambda()#2}::operator()() const::{lambda()#1}::operator()() const':
async-unix-xthread-test.c++:(.text+0x11575): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1158c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `void kj::_::Debug::log<char const (&) [133], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [133], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&) [clone .isra.0]':
async-unix-xthread-test.c++:(.text+0x116f7): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase681::run()::{lambda()#2}::operator()() const':
async-unix-xthread-test.c++:(.text+0x119c2): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x11a6e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x11aa4): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x11ad0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase725::run()':
async-unix-xthread-test.c++:(.text+0x11f4f): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1200b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1203e): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12064): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `void kj::_::Debug::log<char const (&) [96], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [96], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&) [clone .isra.0]':
async-unix-xthread-test.c++:(.text+0x12267): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase625::run()::{lambda()#2}::operator()() const':
async-unix-xthread-test.c++:(.text+0x124f5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1255c): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1262e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12664): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12690): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x126be): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x126f4): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12720): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase571::run()::{lambda()#2}::operator()() const':
async-unix-xthread-test.c++:(.text+0x12c30): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12c83): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12d2e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12d5b): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12d81): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12dae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12ddb): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x12e01): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `void kj::_::Debug::log<char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [78], kj::_::DebugExpression<bool>&, char const (&) [56], kj::Exception&) [clone .isra.0]':
async-unix-xthread-test.c++:(.text+0x131a7): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase939::run()::{lambda()#1}::operator()() const':
async-unix-xthread-test.c++:(.text+0x1336d): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1341e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x13450): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x13478): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase913::run()::{lambda()#1}::operator()() const':
async-unix-xthread-test.c++:(.text+0x136bd): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1376e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x137a0): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x137c8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase547::run()':
async-unix-xthread-test.c++:(.text+0x14144): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x141eb): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14273): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x143a6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x143dc): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x144d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x144f7): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase154::run()':
async-unix-xthread-test.c++:(.text+0x1478f): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14854): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x149ae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x149e2): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14a0e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14a51): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14a6f): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase52::run()::{lambda()#2}::operator()() const':
async-unix-xthread-test.c++:(.text+0x14cd6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14d99): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14e8b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14eb4): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14eda): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14f11): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x14f2f): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase213::run()':
async-unix-xthread-test.c++:(.text+0x15e54): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1603e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x16070): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1609c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::(anonymous namespace)::TestCase102::run()::{lambda()#2}::operator()() const':
async-unix-xthread-test.c++:(.text+0x16403): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x1658e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x165c0): undefined reference to `kj::_::hasSubstring(kj::StringPtr, kj::StringPtr)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x165ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Promise<void>::detach<kj::(anonymous namespace)::TestCase775::run()::{lambda()#2}::operator()() const::{lambda(kj::Exception&&)#3}>(kj::(anonymous namespace)::TestCase775::run()::{lambda()#2}::operator()() const::{lambda(kj::Exception&&)#3}&&)::{lambda()#1}, kj::Exception&&>::getImpl(kj::_::ExceptionOrValue&)':
async-unix-xthread-test.c++:(.text+0x16962): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x16986): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x16a25): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x16a3c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x16a71): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::TestCase547::run()::{lambda()#2}::operator()() const::{lambda()#1}::operator()() const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-unix-xthread-test.c++:(.text+0x16f89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text+0x16fc9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o:async-unix-xthread-test.c++:(.text+0x17000): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::Promise<unsigned int>::wait(kj::WaitScope&)':
async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIjE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIjE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::Promise<void>::wait(kj::WaitScope&)':
async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x3c): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIvE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIvE4waitERNS_9WaitScopeE]+0x88): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::Promise<int>::wait(kj::WaitScope&)':
async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0x3a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0x66): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0x8c): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj7PromiseIiE4waitERNS_9WaitScopeE[_ZN2kj7PromiseIiE4waitERNS_9WaitScopeE]+0xbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::String kj::str<kj::Exception&>(kj::Exception&)':
async-unix-xthread-test.c++:(.text._ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRNS_9ExceptionEEEENS_6StringEDpOT_]+0xd): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::ExceptionOr<kj::_::Void>::operator=(kj::_::ExceptionOr<kj::_::Void>&&)':
async-unix-xthread-test.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::XThreadFulfiller<void>::~XThreadFulfiller()':
async-unix-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIvED2Ev[_ZN2kj1_16XThreadFulfillerIvED5Ev]+0x52): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIvED2Ev[_ZN2kj1_16XThreadFulfillerIvED5Ev]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o: in function `kj::_::XThreadFulfiller<int>::~XThreadFulfiller()':
async-unix-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIiED2Ev[_ZN2kj1_16XThreadFulfillerIiED5Ev]+0x52): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix-xthread-test.o:async-unix-xthread-test.c++:(.text._ZN2kj1_16XThreadFulfillerIiED2Ev[_ZN2kj1_16XThreadFulfillerIiED5Ev]+0x85): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault()':
debug.c++:(.text+0x1e4): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: debug.c++:(.text+0x1ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal()':
debug.c++:(.text+0x3d5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: debug.c++:(.text+0x3f6): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::Context()':
debug.c++:(.text+0x445): undefined reference to `kj::ExceptionCallback::ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x4db): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onRecoverableException(kj::Exception&&)':
debug.c++:(.text+0x748): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::onFatalException(kj::Exception&&)':
debug.c++:(.text+0x7c8): undefined reference to `kj::Exception::wrapContext(char const*, int, kj::String&&)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::logMessage(kj::LogSeverity, char const*, int, int, kj::String&&)':
debug.c++:(.text+0x932): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::(anonymous namespace)::makeDescriptionImpl(kj::_::(anonymous namespace)::DescriptionStyle, char const*, int, char const*, char const*, kj::ArrayPtr<kj::String>) [clone .constprop.0]':
debug.c++:(.text+0x109a): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, int, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x14ca): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::init(char const*, int, kj::Exception::Type, char const*, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x1578): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::logInternal(char const*, int, kj::LogSeverity, char const*, kj::ArrayPtr<kj::String>)':
debug.c++:(.text+0x15f4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x1634): undefined reference to `kj::trimSourceFilename(kj::StringPtr)'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Context::~Context()':
debug.c++:(.text+0x476): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: debug.c++:(.text+0x4b6): undefined reference to `kj::ExceptionCallback::~ExceptionCallback()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::~Fault() [clone .cold]':
debug.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o: in function `kj::_::Debug::Fault::fatal() [clone .cold]':
debug.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTIN2kj1_5Debug7ContextE[_ZTIN2kj1_5Debug7ContextE]+0x10): undefined reference to `typeinfo for kj::ExceptionCallback'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x38): undefined reference to `kj::ExceptionCallback::stackTraceMode()'
/usr/bin/ld: tmp/kj/debug.o:(.rodata._ZTVN2kj1_5Debug7ContextE[_ZTVN2kj1_5Debug7ContextE]+0x40): undefined reference to `kj::ExceptionCallback::getThreadInitializer()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const':
async.c++:(.text+0x3c7): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x3d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ImmediateBrokenPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xb48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::(anonymous namespace)::YieldHarderPromiseNode::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0xdee): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xe08): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xfe0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x104e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x14f9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1739): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1752): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1924): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)::{lambda()#4}::operator()() const':
async.c++:(.text+0x1968): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x1ba9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x1bc6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::get(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2008): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x2240): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x225e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&)':
async.c++:(.text+0x24db): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async.c++:(.text+0x24eb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler()':
async.c++:(.text+0x2548): undefined reference to `kj::getDestructionReason(void*, kj::Exception::Type, char const*, int, kj::StringPtr)'
/usr/bin/ld: async.c++:(.text+0x255d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadPaf::unfulfilledException()':
async.c++:(.text+0x28ae): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f22): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x3179): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3192): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3374): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x33e7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x3401): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text+0x3438): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkBranchBase::releaseHub(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x4164): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x43a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x43ba): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x4594): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ArrayJoinPromiseNodeBase::Branch::getPart()':
async.c++:(.text+0x4823): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TraceBuilder::toString()':
async.c++:(.text+0x4a26): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4a34): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::getAsyncTrace()':
async.c++:(.text+0x4bdd): undefined reference to `kj::stringifyStackTrace(kj::ArrayPtr<void* const>)'
/usr/bin/ld: async.c++:(.text+0x4beb): undefined reference to `kj::stringifyStackTraceAddresses(kj::ArrayPtr<void* const>)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::fire()':
async.c++:(.text+0x5149): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x53b1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x53ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::StringPtr)':
async.c++:(.text+0x5788): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x579f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::XThreadEvent::setDisconnected()':
async.c++:(.text+0x59d0): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x59df): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::EventPort::wake() const':
async.c++:(.text+0x5d4b): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5d57): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0x5d61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Executor::getLoop() const':
async.c++:(.text+0x5e67): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text+0x5e73): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ForkHubBase::fire()':
async.c++:(.text+0x8848): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8ae1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x8afe): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ExclusiveJoinPromiseNode::Branch::fire()':
async.c++:(.text+0x8d3a): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x8d8e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::EagerPromiseNodeBase::fire()':
async.c++:(.text+0x9247): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0x94a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0x94c6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run()':
async.c++:(.text+0x9fb9): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa252): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::run()':
async.c++:(.text+0xa5a5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xa801): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xa9ec): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xaa01): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire()':
async.c++:(.text+0xae61): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xaeb5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xb387): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb3a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb60f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb628): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xb640): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const':
async.c++:(.text+0xc310): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async.c++:(.text+0xc32e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::waitImpl(kj::Own<kj::_::PromiseNode>&&, kj::_::ExceptionOrValue&, kj::WaitScope&)':
async.c++:(.text+0xc7f5): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text+0xca06): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text+0xca2b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&)':
async.c++:(.text+0x2f50): undefined reference to `kj::Exception::addTrace(void*)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::WeakFulfillerBase::disposeImpl(void*) const [clone .cold]':
async.c++:(.text.unlikely+0x4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::cancel(kj::Exception const&) [clone .cold]':
async.c++:(.text.unlikely+0x14): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::Canceler::~Canceler() [clone .cold]':
async.c++:(.text.unlikely+0x24): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::Canceler::AdapterImpl<void>::AdapterImpl(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda()#1}, kj::Canceler::AdapterImpl<void>::Promise(kj::PromiseFulfiller<void>&, kj::Canceler&, kj::Promise<void>)::{lambda(kj::Exception&&)#2}>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x60): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::DummyFunctor, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async.c++:(.text.unlikely+0x7f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x1a4): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberBase::run() [clone .cold]':
async.c++:(.text.unlikely+0xbc5): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async.c++:(.text.unlikely+0xcdc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::ChainPromiseNode::fire() [clone .cold]':
async.c++:(.text.unlikely+0xdd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xdfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text.unlikely+0xe48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::FiberPool::runSynchronously(kj::FunctionParam<void ()>) const [clone .cold]':
async.c++:(.text.unlikely+0x1091): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o:async.c++:(.text.unlikely+0x11e5): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)::{lambda()#1}::operator()() const':
async.c++:(.text._ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv[_ZZN2kj1_10FiberStack4Impl5allocEmP10ucontext_tENKUlvE_clEv]+0xd): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::FiberStack::Impl::alloc(unsigned long, ucontext_t*)':
async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x5a): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async.c++:(.text._ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t[_ZN2kj1_10FiberStack4Impl5allocEmP10ucontext_t]+0x104): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async.o: in function `void kj::_::Debug::log<char const (&) [39], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [39], kj::Exception&)':
async.c++:(.text._ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA39_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x4a): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async.o: in function `kj::_::HeapDisposer<kj::_::EagerPromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x85): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async.o: in function `kj::TaskSet::Task::fire()':
async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x4e): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x314): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x333): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x554): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x569): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async.c++:(.text._ZN2kj7TaskSet4Task4fireEv[_ZN2kj7TaskSet4Task4fireEv]+0x656): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**)':
main.c++:(.text+0x608): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: main.c++:(.text+0x888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: main.c++:(.text+0x94d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::TopLevelProcessContext::TopLevelProcessContext(kj::StringPtr)':
main.c++:(.text+0x38a): undefined reference to `kj::printStackTraceOnCrash()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::runMainAndExit(kj::ProcessContext&, kj::Function<void (kj::StringPtr, kj::ArrayPtr<kj::StringPtr const>)>&&, int, char**) [clone .cold]':
main.c++:(.text.unlikely+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/main.o: in function `kj::String kj::str<char const (&) [28], kj::Exception&>(char const (&) [28], kj::Exception&)':
main.c++:(.text._ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_[_ZN2kj3strIJRA28_KcRNS_9ExceptionEEEENS_6StringEDpOT_]+0x15): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena()':
arena.c++:(.text+0xe0): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: arena.c++:(.text+0x133): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/arena.o: in function `kj::Arena::~Arena() [clone .cold]':
arena.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd()':
list.c++:(.text+0x88): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x94): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent()':
list.c++:(.text+0x138): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x144): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList()':
list.c++:(.text+0x1e8): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x1f4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList()':
list.c++:(.text+0x298): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: list.c++:(.text+0x2a4): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDoubleAdd() [clone .cold]':
list.c++:(.text.unlikely+0x18): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedNotPresent() [clone .cold]':
list.c++:(.text.unlikely+0x44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwRemovedWrongList() [clone .cold]':
list.c++:(.text.unlikely+0x70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/list.o: in function `kj::_::throwDestroyedWhileInList() [clone .cold]':
list.c++:(.text.unlikely+0x9c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation)':
mutex.c++:(.text+0x255): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: mutex.c++:(.text+0x268): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&)':
mutex.c++:(.text+0x3a6): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: mutex.c++:(.text+0x5fa): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: mutex.c++:(.text+0x834): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::wait(kj::_::Mutex::Predicate&, kj::Maybe<kj::Quantity<long, kj::_::NanosecondLabel> >, kj::NoopSourceLocation)':
mutex.c++:(.text+0xac5): undefined reference to `kj::throwFatalException(kj::Exception&&, unsigned int)'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::HeapDisposer<kj::Exception>::disposeImpl(void*) const':
mutex.c++:(.text._ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS_9ExceptionEE11disposeImplEPv]+0xd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Once::runOnce(kj::_::Once::Initializer&, kj::NoopSourceLocation) [clone .cold]':
mutex.c++:(.text.unlikely+0x6): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/mutex.o: in function `kj::_::Mutex::checkPredicate(kj::_::Mutex::Waiter&) [clone .cold]':
mutex.c++:(.text.unlikely+0x68): undefined reference to `kj::Exception::~Exception()'
collect2: error: ld returned 1 exit status
[FAILED ] link: kj/async-queue-test.o
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort()':
async-unix.c++:(.text+0x42f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x438): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x441): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort()':
async-unix.c++:(.text+0x577): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text+0x583): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text+0x620): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::_::PromiseAndFulfillerAdapter<void> > >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter> >::disposeImpl(void*) const':
async-unix.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEEEE11disposeImplEPv]+0x65): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::_::AdapterPromiseNode<siginfo_t, kj::UnixEventPort::SignalPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x386): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x465): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeI9siginfo_tNS_13UnixEventPort20SignalPromiseAdapterEE6rejectEONS_9ExceptionE]+0x479): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS0_26PromiseAndFulfillerAdapterIvEEE3getERNS0_16ExceptionOrValueE]+0x22b): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::~UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x17): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x20): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x29): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o: in function `kj::UnixEventPort::UnixEventPort() [clone .cold]':
async-unix.c++:(.text.unlikely+0x73): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-unix.c++:(.text.unlikely+0x7c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-unix.o:async-unix.c++:(.text.unlikely+0x85): more undefined references to `kj::AutoCloseFd::~AutoCloseFd()' follow
/usr/bin/ld: tmp/kj/async-unix.o: in function `decltype (reducePromiseType((int*)(decltype(nullptr)), false)) kj::newAdaptedPromise<int, kj::UnixEventPort::ChildExitPromiseAdapter, kj::UnixEventPort::ChildSet&, kj::Maybe<int>&>(kj::UnixEventPort::ChildSet&, kj::Maybe<int>&)':
async-unix.c++:(.text._ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_[_ZN2kj17newAdaptedPromiseIiNS_13UnixEventPort23ChildExitPromiseAdapterEJRNS1_8ChildSetERNS_5MaybeIiEEEEEDTcl17reducePromiseTypecvPT_LDnELb0EEEDpOT1_]+0x200): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::Timer::makeTimeoutException()':
timer.c++:(.text+0x31a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter> >::disposeImpl(void*) const':
timer.c++:(.text._ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::fulfill(kj::_::Void&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x69): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x246): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE7fulfillEOS2_]+0x266): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::TimerImpl::TimerPromiseAdapter>::reject(kj::Exception&&) [clone .part.0]':
timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/timer.o:timer.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_9TimerImpl19TimerPromiseAdapterEE6rejectEONS_9ExceptionE]+0x3e1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::ThreadState(kj::Function<void ()>)':
thread.c++:(.text+0xe1): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::ThreadState::unref()':
thread.c++:(.text+0x20c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::runThread(void*)':
thread.c++:(.text+0x2de): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: thread.c++:(.text+0x534): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x736): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x751): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread()':
thread.c++:(.text+0x956): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: thread.c++:(.text+0x96d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: thread.c++:(.text+0x975): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::Thread(kj::Function<void ()>)':
thread.c++:(.text+0xab4): undefined reference to `kj::getExceptionCallback()'
/usr/bin/ld: tmp/kj/thread.o: in function `void kj::_::Debug::log<char const (&) [45], kj::Exception&>(char const*, int, kj::LogSeverity, char const*, char const (&) [45], kj::Exception&)':
thread.c++:(.text._ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_[_ZN2kj1_5Debug3logIJRA45_KcRNS_9ExceptionEEEEvPS3_iNS_11LogSeverityES8_DpOT_]+0x72): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/thread.o: in function `kj::Thread::~Thread() [clone .cold]':
thread.c++:(.text.unlikely+0x4e): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::AsyncCapabilityStream::tryReceiveFd()::ResultHolder>::disposeImpl(void*) const':
async-io.c++:(.text+0x3f4): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo> >::disposeImpl(void*) const':
async-io.c++:(.text+0x4ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead> >::disposeImpl(void*) const':
async-io.c++:(.text+0x55d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::PumpSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x61d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink> >::disposeImpl(void*) const':
async-io.c++:(.text+0x73d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TwoWayPipeEnd> kj::heap<kj::(anonymous namespace)::TwoWayPipeEnd, kj::Own<kj::(anonymous namespace)::AsyncPipe>, kj::Own<kj::(anonymous namespace)::AsyncPipe> >(kj::Own<kj::(anonymous namespace)::AsyncPipe>&&, kj::Own<kj::(anonymous namespace)::AsyncPipe>&&)':
async-io.c++:(.text+0x15d5): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> > kj::heap<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult>, kj::AsyncCapabilityStream::ReadResult>(kj::AsyncCapabilityStream::ReadResult&&) [clone .isra.0]':
async-io.c++:(.text+0x16ce): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x18a5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1b0b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1b20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<unsigned long, kj::(anonymous namespace)::AsyncTee::ReadSink>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d73): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d88): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x61bb): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::String, unsigned long, kj::(anonymous namespace)::AllReader::readAllText(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x63e4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x6422): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x64e2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x66a9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x66c1): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `non-virtual thunk to kj::(anonymous namespace)::PromisedAsyncIoStream::taskFailed(kj::Exception&&)':
async-io.c++:(.text+0x679b): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0x93ad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x93f2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x95e0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ReadSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x9c28): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x9c4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Array<unsigned char>, unsigned long, kj::(anonymous namespace)::AllReader::readAllBytes(unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x9d04): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9d42): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x9e02): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x9fc9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeWriteEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa272): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa2d4): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::PipeReadEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa6b2): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa714): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TwoWayPipeEnd>::disposeImpl(void*) const':
async-io.c++:(.text+0xa78a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0xa814): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::AdapterPromiseNode<kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite> >::disposeImpl(void*) const':
async-io.c++:(.text+0xb18d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::newOneWayPipe(kj::Maybe<unsigned long>)':
async-io.c++:(.text+0xb4fb): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xb5c3): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::(anonymous namespace)::TeeBranch> kj::heap<kj::(anonymous namespace)::TeeBranch, kj::Own<kj::(anonymous namespace)::AsyncTee> >(kj::Own<kj::(anonymous namespace)::AsyncTee>&&)':
async-io.c++:(.text+0xc1e6): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::TeeBranch::tryTee(unsigned long)':
async-io.c++:(.text+0xc97d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xd702): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xd70e): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xd718): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdb7a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdb86): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0xdb90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}::operator()(unsigned long) const':
async-io.c++:(.text+0xdc4d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdc61): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::abortRead()':
async-io.c++:(.text+0xdcd6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdceb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::abortRead()':
async-io.c++:(.text+0xddc6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xdde6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe276): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe2d6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0xe309): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::abortRead()':
async-io.c++:(.text+0xe3a6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0xe3bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling()':
async-io.c++:(.text+0xfac8): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io.c++:(.text+0xfb9d): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee()':
async-io.c++:(.text+0x10ac0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&)':
async-io.c++:(.text+0x10dda): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x10e1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x10e86): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)':
async-io.c++:(.text+0x10fb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x10fcd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x11066): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1107d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >)':
async-io.c++:(.text+0x11116): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1112d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x111b6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x111cd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::pumpTo(kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x11256): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1126d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryRead(void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x112f6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1130d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithStreams(void*, unsigned long, unsigned long, kj::Own<kj::AsyncCapabilityStream>*, unsigned long)':
async-io.c++:(.text+0x11397): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x113c8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveStream()::{lambda(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&)#1}::operator()(kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >&&) const':
async-io.c++:(.text+0x114e9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11518): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x11547): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11578): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const':
async-io.c++:(.text+0x11608): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1164a): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1167b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x116f7): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x11728): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const':
async-io.c++:(.text+0x121bf): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x123a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x123f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x124ab): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x12511): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12519): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x12559): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long)':
async-io.c++:(.text+0x12d8a): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x12da1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::(anonymous namespace)::TeeBranch>::disposeImpl(void*) const':
async-io.c++:(.text+0x12e6b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: async-io.c++:(.text+0x12e87): undefined reference to `kj::UnwindDetector::catchExceptionsAsSecondaryFaults(kj::_::Runnable&) const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long)':
async-io.c++:(.text+0x13222): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x13239): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long)':
async-io.c++:(.text+0x152f2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x152ff): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>)':
async-io.c++:(.text+0x1657c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x1658f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const::{lambda(unsigned long)#2}::operator()(unsigned long)':
async-io.c++:(.text+0x16b27): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x16b6d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long)':
async-io.c++:(.text+0x1703e): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1704a): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x17054): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)':
async-io.c++:(.text+0x17796): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x177c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17a5d): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io.c++:(.text+0x17c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x17cd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::write(void const*, unsigned long)':
async-io.c++:(.text+0x1bb16): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbad): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1bbfb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1bc29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1c985): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1c995): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1c9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::Own<kj::AsyncOutputStream>, kj::(anonymous namespace)::PromisedAsyncOutputStream::PromisedAsyncOutputStream(kj::Promise<kj::Own<kj::AsyncOutputStream> >)::{lambda(kj::Own<kj::AsyncOutputStream>)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1ca78): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cab8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1caf1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1cb37): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cded): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1cdfd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ce09): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1ce48): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cee6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cefd): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1cf33): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionVoid<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1cfff): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1d00f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d01d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x1d05c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d104): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d120): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1d152): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&)::{lambda()#2}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1d71c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1d75c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, kj::_::Void, kj::_::IdentityFunc<void>, kj::(anonymous namespace)::AsyncTee::pull()::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x1dc1e): undefined reference to `kj::operator*(kj::_::Stringifier, kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x1dcb6): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x1dcdf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dd5d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1ddc5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1dddc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x1de11): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x1e2eb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#2}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x205d3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x205e6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x206af): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x207e3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>)::{lambda()#4}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20d0c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x20d4a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::write(void const*, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<void, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x20f43): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x20f56): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2101f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x210cc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x21103): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2161c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2165a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::AsyncInputStream::read(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x242f9): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x24308): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x24315): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2482c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2486c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248b6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x248cf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x24949): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x268b2): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io.c++:(.text+0x268bc): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x268c4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, unsigned long, kj::(anonymous namespace)::LimitedInputStream::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x26dbc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26dfc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e46): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x26e5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x26ee9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x275b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x275d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x275de): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27632): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276a1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276bc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x276f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#5}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27788): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x277a2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x277ae): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x27806): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2788c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278a4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x278d9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<unsigned long, kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::tryRead(void*, unsigned long, unsigned long)::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x27de9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x27e29): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a18b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a1c7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1d8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a1f0): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a288): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a2d2): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a30c): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a32e): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a358): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a370): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a388): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a3a0): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a3ea): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a424): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a446): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a618): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a654): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a6dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a70d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a829): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2a840): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a859): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text+0x2a889): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a8f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2a9b9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2a9f1): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2aa5e): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionSize<kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b181): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b191): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b19d): undefined reference to `kj::throwRecoverableException(kj::Exception&&, unsigned int)'
/usr/bin/ld: async-io.c++:(.text+0x2b25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b31c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b353): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::tryRead(void*, unsigned long, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b3e3): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b3f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b4bf): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b57c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b5b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite::pumpTo(kj::AsyncOutputStream&, unsigned long)::{lambda()#3}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<void> >(kj::PromiseFulfiller<void>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b653): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b666): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b72f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b7dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b813): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedRead::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult> >(kj::PromiseFulfiller<kj::AsyncCapabilityStream::ReadResult>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2b8b8): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2b8dc): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2b9b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2ba6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2baa3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2bf31): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2bf9a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpTo::tryPumpFrom(kj::AsyncInputStream&, unsigned long)::{lambda(kj::Promise<unsigned long>)#1}::operator()(kj::Promise<unsigned long>) const::{lambda(unsigned long)#1}, kj::(anonymous namespace)::AsyncPipe::teeExceptionPromise<unsigned long, kj::PromiseFulfiller<unsigned long> >(kj::PromiseFulfiller<unsigned long>&)::{lambda(kj::Exception&&)#1}>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c093): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text+0x2c0a6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c22c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text+0x2c263): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<unsigned long>, kj::_::Void, kj::(anonymous namespace)::AsyncPump::pump()::{lambda(unsigned long)#1}::operator()(unsigned long) const::{lambda()#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io.c++:(.text+0x2c77c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text+0x2c7ba): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::ensurePulling() [clone .cold]':
async-io.c++:(.text.unlikely+0x215a): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::~AsyncTee() [clone .cold]':
async-io.c++:(.text.unlikely+0x24bb): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::_::ReturnType_<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}, void>::Type*)(decltype(nullptr)), false)) kj::evalNow<kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}>(kj::_::ReturnType_&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x25c9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x25f6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::write(void const*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2610): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::writeWithStreams(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::Array<kj::Own<kj::AsyncCapabilityStream> >) [clone .cold]':
async-io.c++:(.text.unlikely+0x262a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2644): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}::operator()(kj::Maybe<kj::AutoCloseFd>&&) const [clone .cold]':
async-io.c++:(.text.unlikely+0x2740): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::AbortedRead::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2759): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pullLoop()::{lambda()#2}::operator()() const [clone .cold]':
async-io.c++:(.text.unlikely+0x29b4): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}::operator()(kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ad3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::tryRead(unsigned int, void*, unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2ba6): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x2bc7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::pumpTo(unsigned int, kj::AsyncOutputStream&, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c20): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((unsigned long*)(decltype(nullptr)), false)) kj::newAdaptedPromise<unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom, kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&>(kj::(anonymous namespace)::AsyncPipe&, kj::AsyncInputStream&, unsigned long&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2c8f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((kj::AsyncCapabilityStream::ReadResult*)(decltype(nullptr)), false)) kj::newAdaptedPromise<kj::AsyncCapabilityStream::ReadResult, kj::(anonymous namespace)::AsyncPipe::BlockedRead, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> > >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char>&&, unsigned long&, kj::ArrayPtr<kj::Own<kj::AsyncCapabilityStream> >&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x2d90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x2e1c): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedWrite::tryReadWithFds(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x2fbd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const> >(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const> const&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3023): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>, decltype(nullptr)>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&&, decltype(nullptr)&&) [clone .constprop.0] [clone .cold]':
async-io.c++:(.text.unlikely+0x3072): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `decltype (reducePromiseType((void*)(decltype(nullptr)), false)) kj::newAdaptedPromise<void, kj::(anonymous namespace)::AsyncPipe::BlockedWrite, kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&>(kj::(anonymous namespace)::AsyncPipe&, kj::ArrayPtr<unsigned char const>&, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>&, kj::ArrayPtr<int const>&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3117): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncPipe::BlockedRead::writeWithFds(kj::ArrayPtr<unsigned char const>, kj::ArrayPtr<kj::ArrayPtr<unsigned char const> const>, kj::ArrayPtr<int const>) [clone .cold]':
async-io.c++:(.text.unlikely+0x3170): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::LimitedInputStream::decreaseLimit(unsigned long, unsigned long) [clone .cold]':
async-io.c++:(.text.unlikely+0x326c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::(anonymous namespace)::AsyncTee::PumpSink::fill(kj::(anonymous namespace)::AsyncTee::Buffer&, kj::Maybe<kj::OneOf<kj::(anonymous namespace)::AsyncTee::Eof, kj::Exception> > const&) [clone .cold]':
async-io.c++:(.text.unlikely+0x33c3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x344c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::AsyncInputStream::read(void*, unsigned long)::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c5f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::_::Void, unsigned long, kj::(anonymous namespace)::AsyncPipe::BlockedPumpFrom::abortRead()::{lambda()#1}::operator()() const::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x3c70): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x3c94): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveFd()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4793): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47a8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47bd): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47d2): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x47ef): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4815): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4821): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4838): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x486b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::AutoCloseFd>, kj::Maybe<kj::AutoCloseFd>, kj::AsyncCapabilityStream::receiveFd()::{lambda(kj::Maybe<kj::AutoCloseFd>&&)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x4902): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x491b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4938): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text.unlikely+0x4951): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::TransformPromiseNode<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> >, kj::AsyncCapabilityStream::ReadResult, kj::AsyncCapabilityStream::tryReceiveStream()::{lambda(kj::AsyncCapabilityStream::ReadResult)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io.c++:(.text.unlikely+0x497d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text.unlikely+0x499d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ForkBranch<kj::_::Void>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x51): undefined reference to `kj::Exception::Exception(kj::Exception const&)'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_10ForkBranchINS0_4VoidEE3getERNS0_16ExceptionOrValueE]+0x79): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediateBrokenPromiseNode>::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_26ImmediateBrokenPromiseNodeEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_26ImmediateBrokenPromiseNodeEE11disposeImplEPv]+0x1b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::_::Void> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AsyncCapabilityStream::ReadResult> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_21AsyncCapabilityStream10ReadResultEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_21AsyncCapabilityStream10ReadResultEEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<unsigned long> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeImEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeImEEE11disposeImplEPv]+0x4d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x55): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x68): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_11AutoCloseFdEEEE11disposeImplEPv]+0x89): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::HeapDisposer<kj::_::ImmediatePromiseNode<kj::Own<kj::AsyncCapabilityStream> > >::disposeImpl(void*) const':
async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_20ImmediatePromiseNodeINS_3OwnINS_21AsyncCapabilityStreamEEEEEE11disposeImplEPv]+0x90): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
async-io.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED2Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x75): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ForkHub<kj::_::Void>::~ForkHub()':
async-io.c++:(.text._ZN2kj1_7ForkHubINS0_4VoidEED0Ev[_ZN2kj1_7ForkHubINS0_4VoidEED5Ev]+0x7d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv[_ZNK2kj1_12HeapDisposerINS0_16EagerPromiseNodeINS0_4VoidEEEE11disposeImplEPv]+0x85): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ImmediatePromiseNode<kj::AutoCloseFd>::get(kj::_::ExceptionOrValue&)':
async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x86): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x245): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x25f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE[_ZN2kj1_20ImmediatePromiseNodeINS_11AutoCloseFdEE3getERNS0_16ExceptionOrValueE]+0x280): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::fulfill(kj::_::Void&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x6c): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0x91): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE7fulfillEOS2_]+0xae): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::AdapterPromiseNode<kj::_::Void, kj::Canceler::AdapterImpl<void> >::reject(kj::Exception&&) [clone .part.0]':
async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x1f5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE.part.0[_ZN2kj1_18AdapterPromiseNodeINS0_4VoidENS_8Canceler11AdapterImplIvEEE6rejectEONS_9ExceptionE]+0x241): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::ImmediatePromiseNode<kj::AutoCloseFd> > kj::heap<kj::_::ImmediatePromiseNode<kj::AutoCloseFd>, kj::AutoCloseFd>(kj::AutoCloseFd&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x8f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xb3): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0xe9): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x118): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x137): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x17a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x18a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1a8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1b3): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_20ImmediatePromiseNodeINS_11AutoCloseFdEEEJS3_EEENS_3OwnIT_EEDpOT0_]+0x1c5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::Own<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> > > kj::heap<kj::_::AdapterPromiseNode<unsigned long, kj::Canceler::AdapterImpl<unsigned long> >, kj::Canceler&, kj::Promise<unsigned long> >(kj::Canceler&, kj::Promise<unsigned long>&&)':
async-io.c++:(.text._ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_[_ZN2kj4heapINS_1_18AdapterPromiseNodeImNS_8Canceler11AdapterImplImEEEEJRS3_NS_7PromiseImEEEEENS_3OwnIT_EEDpOT0_]+0x16f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::_::Void>::operator=(kj::_::ExceptionOr<kj::_::Void>&&)':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x25b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_[_ZN2kj1_11ExceptionOrINS0_4VoidEEaSEOS3_]+0x270): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE[_ZN2kj1_20TransformPromiseNodeINS0_4VoidEmZNS_8Canceler11AdapterImplImEC4ERNS_16PromiseFulfillerImEERS3_NS_7PromiseImEEEUlOmE_ZNS5_C4ES8_S9_SB_EUlONS_9ExceptionEE0_E7getImplERNS0_16ExceptionOrValueE]+0x7d): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x48): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x5b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_11AutoCloseFdEEEED5Ev]+0x3b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Promise<kj::AutoCloseFd> >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED2Ev[_ZN2kj1_11ExceptionOrINS_7PromiseINS_11AutoCloseFdEEEED5Ev]+0x5a): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o: in function `kj::_::ExceptionOr<kj::Maybe<kj::Own<kj::AsyncCapabilityStream> > >::~ExceptionOr()':
async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x6b): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io.o:async-io.c++:(.text._ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED2Ev[_ZN2kj1_11ExceptionOrINS_5MaybeINS_3OwnINS_21AsyncCapabilityStreamEEEEEED5Ev]+0x5a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncStreamFd::tryReadInternal(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long, kj::AsyncCapabilityStream::ReadResult)':
async-io-unix.c++:(.text+0x78bb): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x78ce): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x7d4f): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::FdConnectionReceiver::acceptImpl(bool)':
async-io-unix.c++:(.text+0x8b8a): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::bindDatagramPort()':
async-io-unix.c++:(.text+0x953d): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9591): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::listen()':
async-io-unix.c++:(.text+0x96d1): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9746): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::LowLevelAsyncIoProviderImpl::wrapConnectingSocketFd(int, sockaddr const*, unsigned int, unsigned int)':
async-io-unix.c++:(.text+0x9d30): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::SocketAddress::lookupHost(kj::LowLevelAsyncIoProvider&, kj::String, kj::String, unsigned int, kj::_::NetworkFilter&)::{lambda(kj::(anonymous namespace)::SocketAddress::LookupParams&&)#2}::operator()(kj::(anonymous namespace)::SocketAddress::LookupParams&&) const':
async-io-unix.c++:(.text+0x9e9d): undefined reference to `vtable for kj::FdOutputStream'
/usr/bin/ld: async-io-unix.c++:(.text+0x9eb8): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9f24): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: async-io-unix.c++:(.text+0x9f83): undefined reference to `kj::FdOutputStream::write(void const*, unsigned long)'
/usr/bin/ld: async-io-unix.c++:(.text+0xa1a5): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncIoProviderImpl::newPipeThread(kj::Function<void (kj::AsyncIoProvider&, kj::AsyncIoStream&, kj::WaitScope&)>)':
async-io-unix.c++:(.text+0xa715): undefined reference to `kj::UnwindDetector::UnwindDetector()'
/usr/bin/ld: async-io-unix.c++:(.text+0xa811): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)::{lambda()#1}::operator()() const':
async-io-unix.c++:(.text+0xae2d): undefined reference to `kj::Exception::Exception(kj::Exception::Type, char const*, int, kj::String)'
/usr/bin/ld: async-io-unix.c++:(.text+0xae44): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::SocketNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::String&&)#1}, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0xc3ac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc3e8): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc474): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xc48d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0xc5f9): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)':
async-io-unix.c++:(.text+0xc814): undefined reference to `kj::_::runCatchingExceptions(kj::_::Runnable&)'
/usr/bin/ld: async-io-unix.c++:(.text+0xcb58): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xcbd7): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, unsigned long, kj::(anonymous namespace)::SocketAddress::LookupReader::read()::{lambda(unsigned long)#1}, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&)':
async-io-unix.c++:(.text+0xedac): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xefd5): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text+0xf061): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text+0xf07a): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncStreamFd::tryReadInternal(void*, unsigned long, unsigned long, kj::AutoCloseFd*, unsigned long, kj::AsyncCapabilityStream::ReadResult) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0xdfc): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::FdConnectionReceiver::acceptImpl(bool) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x103b): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::bindDatagramPort() [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x118b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::listen() [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x11d1): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::SocketAddress::lookupHost(kj::LowLevelAsyncIoProvider&, kj::String, kj::String, unsigned int, kj::_::NetworkFilter&)::{lambda(kj::(anonymous namespace)::SocketAddress::LookupParams&&)#2}::operator()(kj::(anonymous namespace)::SocketAddress::LookupParams&&) const [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x12ef): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1362): undefined reference to `kj::FdOutputStream::~FdOutputStream()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::AsyncIoProviderImpl::newPipeThread(kj::Function<void (kj::AsyncIoProvider&, kj::AsyncIoStream&, kj::WaitScope&)>) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x148b): undefined reference to `kj::UnwindDetector::isUnwinding() const'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::(anonymous namespace)::NetworkAddressImpl::connectImpl(kj::LowLevelAsyncIoProvider&, kj::LowLevelAsyncIoProvider::NetworkFilter&, kj::ArrayPtr<kj::(anonymous namespace)::SocketAddress>, bool)::{lambda()#1}::operator()() const [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x1588): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::TransformPromiseNode<kj::Promise<kj::Array<kj::(anonymous namespace)::SocketAddress> >, kj::_::Void, kj::CaptureByMove<kj::(anonymous namespace)::SocketNetwork::parseAddress(kj::StringPtr, unsigned int)::{lambda(kj::String&&)#1}, kj::String>, kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) [clone .cold]':
async-io-unix.c++:(.text.unlikely+0x181d): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1850): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x186f): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: async-io-unix.c++:(.text.unlikely+0x1888): undefined reference to `kj::Exception::~Exception()'
/usr/bin/ld: tmp/kj/async-io-unix.o:async-io-unix.c++:(.text.unlikely+0x18bb): more undefined references to `kj::Exception::~Exception()' follow
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::_::HeapArrayDisposer::Allocate_<kj::AutoCloseFd, false, false>::destruct(void*)':
async-io-unix.c++:(.text._ZN2kj1_17HeapArrayDisposer9Allocate_INS_11AutoCloseFdELb0ELb0EE8destructEPv[_ZN2kj1_17HeapArrayDisposer9Allocate_INS_11AutoCloseFdELb0ELb0EE8destructEPv]+0x1): undefined reference to `kj::AutoCloseFd::~AutoCloseFd()'
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `kj::ArrayDisposer::Dispose_<kj::AutoCloseFd, false>::destruct(void*)':
async-io-unix.c++:(.text._ZN2kj13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment