Reviewing the reqWallet field of the RPC call table reveals ENABLE_WALLET bugs.
RPC 'validateaddress' denotes reqWallet==false in the RPC call table, but it is disabled with --disable-wallet at compile time. Ditto 'createmultisig', 'verifymessage', getgenerate, setgenerate, ...
'settxfee' has reqWallet==true, but is not covered by #ifdef.
reqWallet was a handy, carefully audited reference. Use it!