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) 
{
    fPrintToConsole = gArgs.GetBoolArg("-printtoconsole", false);
    fLogTimestamps = gArgs.GetBoolArg("-logtimestamps", DEFAULT_LOGTIMESTAMPS);
    fLogTimeMicros = gArgs.GetBoolArg("-logtimemicros", DEFAULT_LOGTIMEMICROS);
    fLogIPs = gArgs.GetBoolArg("-logips", DEFAULT_LOGIPS);
    LogPrintf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
    LogPrintf("Bitcoin version %s\n", FormatFullVersion());
}
namespace { 
ServiceFlags nRelevantServices = NODE_NETWORK;
int nMaxConnections;
int nUserMaxConnections;
int nFD;
ServiceFlags nLocalServices = NODE_NETWORK;
} 
[[noreturn]] static void new_handler_terminate()
{
    
    
    
    
    std::set_new_handler(std::terminate);
    LogPrintf("Error: Out of memory. Terminating.\n");
    
    std::terminate();
};
bool AppInitBasicSetup()