segment: Fix 1-byte read past initialized data when file ends in CR.
[pspp] / tests / language / lexer / variable-parser.at
index a1682a9083dc3f27151d8a1cebc441dd000a1986..2591ef276b65638a5375ff40fc4683db1a1ca50a 100644 (file)
@@ -1,23 +1,23 @@
 dnl PSPP - a program for statistical analysis.
-dnl Copyright (C) 2017 Free Software Foundation, Inc.
-dnl 
+dnl Copyright (C) 2017, 2020 Free Software Foundation, Inc.
+dnl
 dnl This program is free software: you can redistribute it and/or modify
 dnl it under the terms of the GNU General Public License as published by
 dnl the Free Software Foundation, either version 3 of the License, or
 dnl (at your option) any later version.
-dnl 
+dnl
 dnl This program is distributed in the hope that it will be useful,
 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 dnl GNU General Public License for more details.
-dnl 
+dnl
 dnl You should have received a copy of the GNU General Public License
 dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
 dnl
 AT_BANNER([Variable parser])
 
 dnl This program tests that both long and short variable names are parsed OK.
-dnl It use CROSSTABS, since its TABLES subcommand exercises the array var set 
+dnl It use CROSSTABS, since its TABLES subcommand exercises the array var set
 dnl feature.
 AT_SETUP([Long variable names])
 AT_DATA([longvars.sps], [dnl
@@ -28,8 +28,8 @@ END DATA.
 
 LIST.
 
-CROSSTABS 
-       VARIABLES X (1,7) Yabbadabbadoo (1,7) 
+CROSSTABS
+       VARIABLES X (1,7) Yabbadabbadoo (1,7)
        /TABLES X BY Yabbadabbadoo.
 ])
 AT_CHECK([pspp -o pspp.csv longvars.sps])
@@ -55,12 +55,26 @@ Table: X × Yabbadabbadoo
 ,,,Yabbadabbadoo,,,,,,,Total
 ,,,1.00,2.00,3.00,4.00,5.00,6.00,7.00,
 X,1.00,Count,0,0,0,0,0,0,0,0
-,2.00,,0,0,0,0,0,0,0,0
-,3.00,,0,0,0,0,0,0,0,0
-,4.00,,0,0,0,0,1,0,0,1
-,5.00,,0,0,0,0,0,0,0,0
-,6.00,,0,0,0,0,0,0,0,0
-,7.00,,0,0,0,0,0,0,0,0
-Total,,,0,0,0,0,1,0,0,1
+,2.00,Count,0,0,0,0,0,0,0,0
+,3.00,Count,0,0,0,0,0,0,0,0
+,4.00,Count,0,0,0,0,1,0,0,1
+,5.00,Count,0,0,0,0,0,0,0,0
+,6.00,Count,0,0,0,0,0,0,0,0
+,7.00,Count,0,0,0,0,0,0,0,0
+Total,,Count,0,0,0,0,1,0,0,1
 ])
 AT_CLEANUP
+
+
+AT_SETUP([variable parser crash])
+
+AT_DATA([crash.sps], [dnl
+INPUT PROGRAM.
+FORMATS ALL(F1).$
+END FILE.
+END INPUT PROGRAM.
+])
+
+AT_CHECK([pspp -O format=txt crash.sps], [1], [ignore])
+
+AT_CLEANUP
\ No newline at end of file