Fix for Coverity Issue 1241468.

Coverity is complaining about a negative return from _ltoa_convert defined in
qio_formatted.c.

It is easy enough to rewrite this routine so that it returns a result that can never be
negative.  Hopefully, that will quiet Coverity on this issue.

Redefined the return value from the number of characters to skip *before* encountering the
start of the converted number to the *position* of the first valid character.  Before, the
return value could range from [-1..tmplen-2].  Now its range is [0..tmplen-1].

I changed the client code to accommodate this new definition of the return value
(basically subtracted 1 from it).

I changed the return type to size_t, which is an unsigned type so it can't go below zero.
Update length calculation in _ltoa.
Merge branch 'master' into fixCoverity1241468
Let _ltoa_convert() return -1 to indicate buffer overflow, and handle this in the caller.
Merge branch 'master' into fixCoverity1241468
Update sub_test to pass walltime to slurm and look for timeouts

We let slurm handle timeouts instead of using sub_test's mechanisms. However,
we never actually looked for timeouts or told slurm what timeout to use.
Instead we just let the default timeout be used and didn't record the fact that
a timeout occurred.

This updates sub_test to pass --walltime to the executable which will in turn
set the actual slurm timeout. We also not look for the timeout and create an
appropriate error message like we do for pbs.
Add a nodelist option to the slurm launcher

Allow a nodelist to be specified for the slurm launcher. This can either be set
by passing the executable a --nodelist or by setting the env var
CHPL_LAUNCHER_NODELIST
Merge pull request #909 from hildeth/fixCoverity1241468

Fix coverity1241468

 Let _ltoa_convert() return -1 to indicate buffer overflow, and handle this in the caller.
Update regressions with results from this weekend and today.
Merge pull request #915 from thomasvandoren/triage

Update regressions with results from this weekend and today.
Convert getFirstExpr(Expr* expr) to virtual Expr* getFirstExpr() so that new Loop ASTs can be handled more cleanly
Fix typo
Deprecating SLURM_JOB_NODELIST in chpl_launchcmd

This is no longer a valid slurm env var, instead we now pass the nodelist
directly to our launcher by passing down CHPL_LAUNCHCMD_HOSTLIST with the newly
added --nodelist flag
Fix typo
Fix typo
Merge pull request #916 from ronawho/slurm-add-nodelist

Add a nodelist option to the slurm launcher

[reviewed by @thomasvandoren]

Allow a nodelist to be specified for the slurm launcher. This can either be set
by passing the executable a --nodelist or by setting the env var
CHPL_LAUNCHER_NODELIST
Switch re.I to re.IGNORECASE for readability
Merge pull request #913 from ronawho/capture-slurm-timeouts

Update sub_test to pass walltime to slurm and look for timeouts

[reviewed by @thomasvandoren]

We let slurm handle timeouts instead of using sub_test's mechanisms. However,
we never actually looked for timeouts or told slurm what timeout to use.
Instead we just let the default timeout be used and didn't record the fact that
a timeout occurred.

This updates sub_test to pass --walltime to the executable which will in turn
set the actual slurm timeout. We also not look for the timeout and create an
appropriate error message like we do for pbs.
Merge pull request #917 from ronawho/get-correct-xc-nodes

Deprecating SLURM_JOB_NODELIST in chpl_launchcmd

[reviewed by @thomasvandoren]

This is no longer a valid slurm env var, instead we now pass the nodelist
directly to our launcher by passing down CHPL_LAUNCHCMD_HOSTLIST with the newly
added --nodelist flag
Merge pull request #918 from noakesmichael/firstExpr

Convert getFirstExpr(Expr* expr) to virtual Expr* getFirstExpr()

This will simplify separating While/For from BlockStmt and adding new ASTs in the future

Compiled: STD clang/darwin, STD gcc/linux64, LLVM gcc/linux64
Tested: paratest -verify
Review: None