Built against master branch 801dd40666d1e6009920ad3ff755c7bb993b2a62:

    $ ./bitcoind -wallet=/tmp/wallet.dat
    Error: Error loading wallet /tmp/wallet.dat. -wallet parameter must only specify a filename (not a path).
    Segmentation fault
    $ 

It's crashing here:

    Thread 1 "bitcoin-shutoff" received signal SIGSEGV, Segmentation fault.
    CConnman::Stop (this=0x0) at net.cpp:2405
    2405	    if (threadMessageHandler.joinable())
    (gdb) where
    #0  CConnman::Stop (this=0x0) at net.cpp:2405
    #1  0x00005555555a57fb in Shutdown () at init.cpp:197
    #2  0x00005555555997fb in AppInit (argc=<optimized out>, argv=<optimized out>) at bitcoind.cpp:183
    #3  0x0000555555599a39 in main (argc=0, argv=0x0) at bitcoind.cpp:195
    (gdb) 
static const bool DEFAULT_PROXYRANDOMIZE = true;
static const bool DEFAULT_REST_ENABLE = false;
static const bool DEFAULT_STOPAFTERBLOCKIMPORT = false;
std::unique_ptr<CConnman> g_connman;
std::unique_ptr<PeerLogicValidation> peerLogic;
#if ENABLE_ZMQ
static CZMQNotificationInterface* pzmqNotificationInterface = nullptr;
#endif
#ifdef WIN32
#define MIN_CORE_FILEDESCRIPTORS 0
#else
#define MIN_CORE_FILEDESCRIPTORS 150
#endif
static const char* FEE_ESTIMATES_FILENAME="fee_estimates.dat";
std::atomic<bool> fRequestShutdown(false);
std::atomic<bool> fDumpMempoolLater(false);
void StartShutdown()
{
    fRequestShutdown = true;
}
bool ShutdownRequested()
{
    return fRequestShutdown;
}
/**
 * This is a minimally invasive approach to shutdown on LevelDB read errors from the
 * chainstate, while keeping user interface out of the common library, which is shared
 * between bitcoind, and bitcoin-qt and non-server tools.
*/
class CCoinsViewErrorCatcher final : public CCoinsViewBacked