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) 
for (const auto& net : gArgs.GetArgs("-whitelist")) {
        CSubNet subnet;
        LookupSubNet(net.c_str(), subnet);
        if (!subnet.IsValid())
            return InitError(strprintf(_("Invalid netmask specified in -whitelist: '%s'"), net));
        connOptions.vWhitelistedRange.push_back(subnet);
    }
    if (gArgs.IsArgSet("-seednode")) {
        connOptions.vSeedNodes = gArgs.GetArgs("-seednode");
    }
    
    connOptions.m_use_addrman_outgoing = !gArgs.IsArgSet("-connect");
    if (!connOptions.m_use_addrman_outgoing) {
        const auto connect = gArgs.GetArgs("-connect");
        if (connect.size() != 1 || connect[0] != "0") {
            connOptions.m_specified_outgoing = connect;
        }
    }
    if (!connman.Start(scheduler, connOptions)) {
        return false;
    }
    
    SetRPCWarmupFinished();
    uiInterface.InitMessage(_("Done loading"));
#ifdef ENABLE_WALLET
    StartWallets(scheduler);
#endif
    return !fRequestShutdown;
}