diff --git a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C index 152bca0ed6a4b73ea367485b68a237a569e787bf..c2390f4ffa51448f7c19ddebc02c9740a646f279 100644 --- a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C +++ b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C @@ -33,7 +33,7 @@ License // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // // Truncate error message for readability -static const unsigned errLen = 80; +static constexpr const unsigned errLen = 80; // * * * * * * * * * * * * * * * Local Functions * * * * * * * * * * * * * * // @@ -581,7 +581,7 @@ Foam::Istream& Foam::ISstream::read(string& str) } -Foam::Istream& Foam::ISstream::readVariable(string& str) +Foam::Istream& Foam::ISstream::readVariable(std::string& str) { static const unsigned maxLen = 1024; static char buf[maxLen]; @@ -698,14 +698,14 @@ Foam::Istream& Foam::ISstream::readVariable(string& str) } // Finalize - str = buf; + str.assign(buf, nChar); putback(c); return *this; } -Foam::Istream& Foam::ISstream::readVerbatim(string& str) +Foam::Istream& Foam::ISstream::readVerbatim(std::string& str) { static const unsigned maxLen = 8000; static char buf[maxLen]; diff --git a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H index 4b2e200971a7fbd804b1389521e8278d68b8455f..ce7df55c3b616e6ca815b183e0b31ad3785aa8e5 100644 --- a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H +++ b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.H @@ -70,15 +70,14 @@ class ISstream //- Get a word token void readWordToken(token& t); - //- Read a verbatim string (excluding block delimiters). // The leading "#{" has been removed prior to calling, // continues until the closing "#}" has been found. - Istream& readVerbatim(string& str); + Istream& readVerbatim(std::string& str); //- Read a variable name starting with '$'. - // Handles both "$var" and "${var}" forms. - Istream& readVariable(string& str); + // Handles "$var" and "${var}" forms, permits '/' scoping character. + Istream& readVariable(std::string& str); //- No copy assignment void operator=(const ISstream&) = delete;