Assume that you have a tlclient.conf with SERVER_NAME=foobar. Now, if you call tlclient "", I think most users expect that tlclient will be started with an empty server name field. But this is not the case. Internally, tlclient treats non-existing arguments the same as "". Specifically, CommandLine::GetRest returns "" if you ask for non-existing arguments.