Currently due to the way strtol and strtod work one can do
CCTK_ParameterSet("cctk_itlast", "Cactus", "")
which return 0 (all is fine) and sets cctk_itlast to 0 (rather than failing with -6 "invalid string").
The attached patch checks that the parameter value string is not empty.
This cannot happen from inside of parfiles since the parser disallows it. It can happen when using the Trigger thorn.