diff --git a/src/macro/MacroFlex.ll b/src/macro/MacroFlex.ll
index f88798f8494c39951703e1aa959226b14f060a51..1db33cb61010478a167d724dcd181806c5cb6cdc 100644
--- a/src/macro/MacroFlex.ll
+++ b/src/macro/MacroFlex.ll
@@ -232,9 +232,7 @@ CONT \\\\
 <STMT,EXPR>length           { return token::LENGTH; }
 
 <STMT,EXPR>\"[^\"]*\"       {
-                              string s{yytext + 1};
-                              s.resize(s.length() - 1);
-                              yylval->build<string>(s);
+                              yylval->build<string>(yytext + 1).pop_back();
                               return token::STRING;
                             }