aboutsummaryrefslogtreecommitdiff
path: root/lib/forlanlex.l
diff options
context:
space:
mode:
Diffstat (limited to 'lib/forlanlex.l')
-rw-r--r--lib/forlanlex.l15
1 files changed, 9 insertions, 6 deletions
diff --git a/lib/forlanlex.l b/lib/forlanlex.l
index db893df..62265cb 100644
--- a/lib/forlanlex.l
+++ b/lib/forlanlex.l
@@ -1,6 +1,6 @@
1%{ 1%{
2/* This file is part of Eclat. 2/* This file is part of Eclat.
3 Copyright (C) 2012-2015 Sergey Poznyakoff. 3 Copyright (C) 2012-2018 Sergey Poznyakoff.
4 4
5 Eclat is free software; you can redistribute it and/or modify 5 Eclat is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
19#include <sysexits.h> 19#include <sysexits.h>
20#include <ctype.h> 20#include <ctype.h>
21#include <grecs.h> 21#include <grecs.h>
22#include <grecs-locus.h> 22#include <grecs/locus.h>
23#include "forlangrm.h" 23#include "forlangrm.h"
24#include "forlan.h" 24#include "forlan.h"
25 25
@@ -100,15 +100,18 @@ continue return CONTINUE;
100\"[^\\"\n]*\\\n { BEGIN(STR); 100\"[^\\"\n]*\\\n { BEGIN(STR);
101 grecs_line_begin(); 101 grecs_line_begin();
102 grecs_line_acc_grow_unescape_last(yytext + 1, 102 grecs_line_acc_grow_unescape_last(yytext + 1,
103 yyleng - 1); 103 yyleng - 1,
104 &yylloc);
104 grecs_locus_point_advance_line(grecs_current_locus_point); } 105 grecs_locus_point_advance_line(grecs_current_locus_point); }
105\"[^\\"\n]*\\. { BEGIN(STR); 106\"[^\\"\n]*\\. { BEGIN(STR);
106 grecs_line_begin(); 107 grecs_line_begin();
107 grecs_line_acc_grow_unescape_last(yytext + 1, 108 grecs_line_acc_grow_unescape_last(yytext + 1,
108 yyleng - 1); } 109 yyleng - 1,
109<STR>\"[^\\"\n]*\\\n { grecs_line_acc_grow_unescape_last(yytext, yyleng); 110 &yylloc); }
111<STR>\"[^\\"\n]*\\\n { grecs_line_acc_grow_unescape_last(yytext, yyleng,
112 &yylloc);
110 grecs_locus_point_advance_line(grecs_current_locus_point); } 113 grecs_locus_point_advance_line(grecs_current_locus_point); }
111<STR>[^\\"\n]*\\. { grecs_line_acc_grow_unescape_last(yytext, yyleng); } 114<STR>[^\\"\n]*\\. { grecs_line_acc_grow_unescape_last(yytext, yyleng, &yylloc); }
112<STR>[^\\"\n]*\" { BEGIN(INITIAL); 115<STR>[^\\"\n]*\" { BEGIN(INITIAL);
113 if (yyleng > 1) 116 if (yyleng > 1)
114 grecs_line_add(yytext, yyleng - 1); 117 grecs_line_add(yytext, yyleng - 1);

Return to:

Send suggestions and report system problems to the System administrator.