macroprocessor: interpret arrays passed on the command line as arrays instead of strings. closes #1578

time-shift
Houtan Bastani 2018-01-23 16:31:33 +01:00
parent 055ffb0b9e
commit 204d9cd05f
1 changed files with 6 additions and 2 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2008-2017 Dynare Team
* Copyright (C) 2008-2018 Dynare Team
*
* This file is part of Dynare.
*
@ -60,7 +60,11 @@ MacroDriver::parse(const string &f, const string &fb, const string &modfiletxt,
}
catch (boost::bad_lexical_cast &)
{
file_with_endl << "@#define " << it->first << " = \"" << it->second << "\"" << endl;
if (it->second.front() == '[' && it->second.back() == ']')
// If the input is an array. Issue #1578
file_with_endl << "@#define " << it->first << " = " << it->second << endl;
else
file_with_endl << "@#define " << it->first << " = \"" << it->second << "\"" << endl;
}
file_with_endl << modfiletxt << endl;