Assorted improvements to diagnostics.
[pspp] / tests / language / data-io / dataset.at
index f901410d98c52678ab1a2acb2069e7030c7c94fc..c484f16b8114fb98a7a6c6be42bbf16b88c6f4c9 100644 (file)
@@ -132,7 +132,9 @@ x
 Table: Datasets
 second (active dataset)
 
-dataset.pspp:10: error: LIST: LIST is allowed only after the active dataset has been defined.
+"dataset.pspp:10.1-10.4: error: LIST: LIST is allowed only after the active dataset has been defined.
+   10 | LIST.
+      | ^~~~"
 ])
 AT_CLEANUP
 
@@ -213,7 +215,9 @@ one (active dataset)
 
 5 @&t@
 
-dataset.pspp:16: error: LIST: LIST is allowed only after the active dataset has been defined.
+"dataset.pspp:16.1-16.4: error: LIST: LIST is allowed only after the active dataset has been defined.
+   16 | LIST.
+      | ^~~~"
 
 Table: Data List
 x
@@ -294,3 +298,36 @@ Table: Datasets
 unnamed dataset (active dataset)
 ])
 AT_CLEANUP
+
+
+
+dnl The bug for which the following test checks, is apparent only
+dnl when compiled with -fsanitize=address or run under valgrind
+AT_SETUP([DATASET heap overflow])
+AT_DATA([dataset.pspp], [dnl
+DATASET DECLARE initial.
+DATA LIST /x 1.
+
+DATASET COPY subsq.
+
+DATA LIST /y 2-4.
+BEGIN DATA.
+7
+END DATA.
+
+DATASET ACTIVATE subsq.
+
+LIST.
+])
+
+AT_CHECK([pspp -O format=csv dataset.pspp], [0], [dnl
+Table: Reading 1 record from INLINE.
+Variable,Record,Columns,Format
+x,1,1-1,F1.0
+
+Table: Reading 1 record from INLINE.
+Variable,Record,Columns,Format
+y,1,2-4,F3.0
+])
+
+AT_CLEANUP
\ No newline at end of file