Currently, the program will get the list of OpenCL platforms, and check the first one (id 0) by default for devices. If no devices are found, the program exits.
However, it's possible (and I have encountered this) that there will be no devices on platform 0, but there will be devices on platform 1, for example. Of course, the user could specify this using the -p argument, but I think it is a sane default to check other platforms if there is no device found on the first one. I do not think we should override a user's preference when they explicitly specify a platform ID, though.