HPCC-10412 Fix problems with #elseif and catch multiple #else

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-10412 Add test cases for the #elseif fixes

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #5252 from ghalliday/issue10412

HPCC-10412 Fix problems with #elseif and catch multiple #else

Reviewed-By: Jamie Noss <james.noss@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>