diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 84b3d68051f..b94aa0fbf6c 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2019-06-10  Tom de Vries  <tdevries@suse.de>
+
+	PR gdb/24611
+	* linespec.c (linespec_lexer_lex_string): Remove incorrect
+	"++(PARSER_STREAM (parser))" for "[abi"-prefixed colon.  Add assert.
+
 2019-06-10  Tom de Vries  <tdevries@suse.de>
 
 	PR symtab/24545
diff --git a/gdb/linespec.c b/gdb/linespec.c
index f0afe1b4ca1..94400f3f336 100644
--- a/gdb/linespec.c
+++ b/gdb/linespec.c
@@ -760,7 +760,9 @@ linespec_lexer_lex_string (linespec_parser *parser)
 	      /* Do not tokenize ABI tags such as "[abi:cxx11]".  */
 	      else if (PARSER_STREAM (parser) - start > 4
 		       && startswith (PARSER_STREAM (parser) - 4, "[abi"))
-		++(PARSER_STREAM (parser));
+		{
+		  /* Nothing.  */
+		}
 
 	      /* Do not tokenify if the input length so far is one
 		 (i.e, a single-letter drive name) and the next character
@@ -861,6 +863,7 @@ linespec_lexer_lex_string (linespec_parser *parser)
 	    }
 
 	  /* Advance the stream.  */
+	  gdb_assert (*(PARSER_STREAM (parser)) != '\0');
 	  ++(PARSER_STREAM (parser));
 	}
     }