diff options
author | ridiculousfish <corydoras@ridiculousfish.com> | 2012-09-01 02:14:13 -0700 |
---|---|---|
committer | ridiculousfish <corydoras@ridiculousfish.com> | 2012-09-01 02:14:13 -0700 |
commit | de5223db66ba36001020f7b3c2acda4303b927b3 (patch) | |
tree | 5f8b5cdf5d8975927e602337065e96fccf12af51 /parser.cpp | |
parent | cc1395797e78a26583461333199181b4f8ec0b13 (diff) |
Improve documentation and error reporting for elseif.
Diffstat (limited to 'parser.cpp')
-rw-r--r-- | parser.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -146,7 +146,7 @@ The fish parser. Contains functions for parsing and evaluating code. /** Error when using else builtin outside of if block */ -#define INVALID_ELSE_ERR_MSG _( L"'else' builtin not inside of if block" ) +#define INVALID_ELSE_OR_ELSEIF_ERR_MSG _( L"'%ls' builtin not inside of if block" ) /** Error when using end builtin outside of block @@ -3293,9 +3293,9 @@ int parser_t::test( const wchar_t * buff, } /* - Test that else is only used directly in an if-block + Test that else and elseif are only used directly in an if-block */ - if( command == L"else" ) + if( command == L"else" || command == L"elseif" ) { if( !count || block_type[count-1]!=IF ) { @@ -3304,7 +3304,8 @@ int parser_t::test( const wchar_t * buff, { error( SYNTAX_ERROR, tok_get_pos( &tok ), - INVALID_ELSE_ERR_MSG ); + INVALID_ELSE_OR_ELSEIF_ERR_MSG, + command.c_str()); print_errors( *out, prefix ); } |