-/* Function called by getl to read a line.
- Puts the line in OUTPUT, sets the file name in *FILE_NAME and
- line number in *LINE_NUMBER. Returns true if a line was
- obtained, false if the source is exhausted. */
-static bool
-do_repeat_read (struct getl_interface *b, struct string *output)
+static struct repeat_line *
+current_line (const struct getl_interface *interface)
+{
+ struct repeat_block *block
+ = UP_CAST (interface, struct repeat_block, parent);
+ return (block->cur_line != ll_null (&block->lines)
+ ? ll_data (block->cur_line, struct repeat_line, ll)
+ : NULL);
+}
+
+/* Function called by getl to read a line. Puts the line in
+ OUTPUT and its syntax mode in *SYNTAX. Returns true if a line
+ was obtained, false if the source is exhausted. */
+static bool
+do_repeat_read (struct getl_interface *interface,
+ struct string *output)