]> granicus.if.org Git - php/commitdiff
Canonicalize bison error during ini parsing
authorNikita Popov <nikita.ppv@gmail.com>
Thu, 14 May 2020 10:54:20 +0000 (12:54 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Thu, 14 May 2020 12:15:56 +0000 (14:15 +0200)
Bison 3.6 seems to use "end of file" rather than "$end" for this.
Force the same on older bison versions to be consistent.

Zend/tests/bug70748.phpt
Zend/zend_ini_parser.y
ext/standard/tests/general_functions/parse_ini_string_error.phpt

index feb0e2a59df60b5281e4c7d25cc67d378233441a..d6703487cefe1ca392da1e4b221498680e275f33 100644 (file)
@@ -15,6 +15,6 @@ var_dump(parse_ini_file($ini_file));
 unlink(__DIR__ . "/bug70748.ini");
 ?>
 --EXPECTF--
-Warning: syntax error, unexpected $end, expecting '}' in %sbug70748.ini on line %d
+Warning: syntax error, unexpected end of file, expecting '}' in %sbug70748.ini on line %d
  in %sbug70748.php on line %d
 bool(false)
index 749f929a9bf1bdb3db71e0546658b921f6800ef8..db9b7d670b65fde239a1314b21b2411afb191760 100644 (file)
@@ -292,6 +292,7 @@ static void zval_ini_dtor(zval *zv)
 %define api.pure full
 %define parse.error verbose
 
+%token END 0 "end of file"
 %token TC_SECTION
 %token TC_RAW
 %token TC_CONSTANT
index 0eba65ea17e1f996e5db033d6fdda1aa5f7b34b1..afa291d31f378faa5c612f53479094591b9884ac 100644 (file)
@@ -5,6 +5,6 @@ Ini parsing errors should not result in memory leaks
 var_dump(parse_ini_string('a="b'));
 ?>
 --EXPECTF--
-Warning: syntax error, unexpected $end, expecting TC_DOLLAR_CURLY or TC_QUOTED_STRING or '"' in Unknown on line 1
+Warning: syntax error, unexpected end of file, expecting TC_DOLLAR_CURLY or TC_QUOTED_STRING or '"' in Unknown on line 1
  in %s on line %d
 bool(false)