diff --git a/Framework/API/src/Algorithm.cpp b/Framework/API/src/Algorithm.cpp index ef9ae5f017cbcf25a23e04f3703666ebd4278eab..154f7794999fadaeb8973c73dbcc86defab1ff7c 100644 --- a/Framework/API/src/Algorithm.cpp +++ b/Framework/API/src/Algorithm.cpp @@ -1332,10 +1332,12 @@ bool Algorithm::processGroups() { // Default name = "in1_in2_out" const std::string inName = prop->value(); std::string outName; - if (m_groupsHaveSimilarNames) - outName = inName + "_" + Strings::toString(entry + 1); - else - outName = outputBaseName + "_" + inName; + if (m_groupsHaveSimilarNames) { + outName.append(inName).append("_").append( + Strings::toString(entry + 1)); + } else { + outName.append(outputBaseName).append("_").append(inName); + } auto inputProp = std::find_if(m_inputWorkspaceProps.begin(), m_inputWorkspaceProps.end(), diff --git a/Framework/API/src/FunctionFactory.cpp b/Framework/API/src/FunctionFactory.cpp index 2f870c01799439d5695a028e68c5ea33aaa22e1d..2fdd0aec21e5b630f0df72edb9acde2c7234d24e 100644 --- a/Framework/API/src/FunctionFactory.cpp +++ b/Framework/API/src/FunctionFactory.cpp @@ -125,8 +125,11 @@ IFunction_sptr FunctionFactoryImpl::createSimple( fun->setParameter(parName, boost::lexical_cast<double>(parValue)); } catch (boost::bad_lexical_cast &) { throw std::runtime_error( - "Error in value of parameter " + parName + ".\n" + parValue + - " cannot be interpreted as a floating point value."); + std::string("Error in value of parameter ") + .append(parName) + .append(".\n") + .append(parValue) + .append(" cannot be interpreted as a floating point value.")); } } } // for term diff --git a/Framework/API/src/MuParserUtils.cpp b/Framework/API/src/MuParserUtils.cpp index fe56575992421f521b0fd38357350a72b00ceb3d..7ff53a0c45b44ab4db2b533c94f28ef4517e5632 100644 --- a/Framework/API/src/MuParserUtils.cpp +++ b/Framework/API/src/MuParserUtils.cpp @@ -36,7 +36,7 @@ const std::map<double, std::string> MUPARSER_CONSTANTS = { * @param parser The parser to be initialized. */ void DLLExport addDefaultConstants(mu::Parser &parser) { - for (const auto constant : MUPARSER_CONSTANTS) { + for (const auto &constant : MUPARSER_CONSTANTS) { parser.DefineConst(constant.second, constant.first); } } @@ -46,7 +46,7 @@ const std::map<std::string, oneVarFun> MUPARSER_ONEVAR_FUNCTIONS = { {"erf", gsl_sf_erf}, {"erfc", gsl_sf_erfc}}; void DLLExport extraOneVarFunctions(mu::Parser &parser) { - for (const auto function : MUPARSER_ONEVAR_FUNCTIONS) { + for (const auto &function : MUPARSER_ONEVAR_FUNCTIONS) { parser.DefineFun(function.first, function.second); } } diff --git a/Framework/CurveFitting/src/FuncMinimizers/FABADAMinimizer.cpp b/Framework/CurveFitting/src/FuncMinimizers/FABADAMinimizer.cpp index 141e127f4fd4d2b87d51b73e34a00fc293129aea..93766046c73254fd271f1a0c81ff782af6851aaa 100644 --- a/Framework/CurveFitting/src/FuncMinimizers/FABADAMinimizer.cpp +++ b/Framework/CurveFitting/src/FuncMinimizers/FABADAMinimizer.cpp @@ -1002,7 +1002,7 @@ bool FABADAMinimizer::IterationContinuation() { std::string failed = ""; for (size_t i = 0; i < m_nParams; ++i) { if (!m_par_converged[i]) { - failed = failed + m_FitFunction->parameterName(i) + ", "; + failed.append(m_FitFunction->parameterName(i)).append(", "); } } failed.replace(failed.end() - 2, failed.end(), "."); diff --git a/Framework/DataHandling/src/FilterEventsByLogValuePreNexus.cpp b/Framework/DataHandling/src/FilterEventsByLogValuePreNexus.cpp index 4efeb98b8760ecfc6c20ec6b991a00c04c5d788b..3401c5b8277b4addf35adf4d7b80f6fb4a387601 100644 --- a/Framework/DataHandling/src/FilterEventsByLogValuePreNexus.cpp +++ b/Framework/DataHandling/src/FilterEventsByLogValuePreNexus.cpp @@ -177,14 +177,23 @@ static string generateMappingfileName(EventWorkspace_sptr &wksp) { for (auto &dir : dirs) { if ((dir.length() > CAL_LEN) && (dir.compare(dir.length() - CAL.length(), CAL.length(), CAL) == 0)) { - if (Poco::File(base.path() + "/" + dir + "/calibrations/" + mapping) - .exists()) - files.push_back(base.path() + "/" + dir + "/calibrations/" + mapping); + if (Poco::File(std::string(base.path()) + .append("/") + .append(dir) + .append("/calibrations/") + .append(mapping)) + .exists()) { + files.push_back(std::string(base.path()) + .append("/") + .append(dir) + .append("/calibrations/") + .append(mapping)); + } } } if (files.empty()) - return ""; + return std::string(); else if (files.size() == 1) return files[0]; else // just assume that the last one is the right one, this should never be diff --git a/Framework/DataHandling/src/ImggAggregateWavelengths.cpp b/Framework/DataHandling/src/ImggAggregateWavelengths.cpp index 3b1bd81eb312ade75ddcdd47d3bf4540548fbe4f..63273b693ec2378b6e8c16e9a707336872fea660 100644 --- a/Framework/DataHandling/src/ImggAggregateWavelengths.cpp +++ b/Framework/DataHandling/src/ImggAggregateWavelengths.cpp @@ -514,8 +514,11 @@ ImggAggregateWavelengths::rangesFromStringProperty( Mantid::Kernel::StringTokenizer::TOK_TRIM); if (2 != minMaxTokens.count()) { throw std::invalid_argument( - "Could not parse a minimum and maximum value separated by '" + sep + - "' from the string: " + str); + std::string( + "Could not parse a minimum and maximum value separated by '") + .append(sep) + .append("' from the string: ") + .append(str)); } try { diff --git a/Framework/DataHandling/src/LoadDetectorsGroupingFile.cpp b/Framework/DataHandling/src/LoadDetectorsGroupingFile.cpp index c38e6ef6e9e950e2bc24abab845c47e84f22c120..0dce1ba93a0e5b57d25120127151954019e24eeb 100644 --- a/Framework/DataHandling/src/LoadDetectorsGroupingFile.cpp +++ b/Framework/DataHandling/src/LoadDetectorsGroupingFile.cpp @@ -512,7 +512,7 @@ void LoadGroupXMLFile::parseXML() { this->getAttributeValueByName(pNode, "val", valfound); std::string finalvalue; if (valfound && !value.empty()) - finalvalue = value + ", " + val_value; + finalvalue.append(value).append(", ").append(val_value); else if (value.empty()) finalvalue = val_value; else @@ -535,7 +535,7 @@ void LoadGroupXMLFile::parseXML() { this->getAttributeValueByName(pNode, "val", valfound); std::string finalvalue; if (valfound && !value.empty()) - finalvalue = value + ", " + val_value; + finalvalue.append(value).append(", ").append(val_value); else if (value.empty()) finalvalue = val_value; else @@ -560,7 +560,7 @@ void LoadGroupXMLFile::parseXML() { this->getAttributeValueByName(pNode, "val", valfound); std::string finalvalue; if (valfound && !value.empty()) - finalvalue = value + ", " + val_value; + finalvalue.append(value).append(", ").append(val_value); else if (value.empty()) finalvalue = val_value; else diff --git a/Framework/DataHandling/src/LoadEventPreNexus2.cpp b/Framework/DataHandling/src/LoadEventPreNexus2.cpp index 4760f788357cd916fe687730d25dc184278a3a67..10a2fac1dbc21c7d27abe477989f6aaa5dfd6dc7 100644 --- a/Framework/DataHandling/src/LoadEventPreNexus2.cpp +++ b/Framework/DataHandling/src/LoadEventPreNexus2.cpp @@ -175,9 +175,17 @@ static string generateMappingfileName(EventWorkspace_sptr &wksp) { for (auto &dir : dirs) { if ((dir.length() > CAL_LEN) && (dir.compare(dir.length() - CAL.length(), CAL.length(), CAL) == 0)) { - if (Poco::File(base.path() + "/" + dir + "/calibrations/" + mapping) + if (Poco::File(std::string(base.path()) + .append("/") + .append(dir) + .append("/calibrations/") + .append(mapping)) .exists()) - files.push_back(base.path() + "/" + dir + "/calibrations/" + mapping); + files.push_back(std::string(base.path()) + .append("/") + .append(dir) + .append("/calibrations/") + .append(mapping)); } } diff --git a/Framework/DataHandling/src/LoadMask.cpp b/Framework/DataHandling/src/LoadMask.cpp index 8710f55f6a3dfdad3249ea64ecdcc4449e1494ad..19367a82d43eddd270a10fd7dacabab6c5562039 100644 --- a/Framework/DataHandling/src/LoadMask.cpp +++ b/Framework/DataHandling/src/LoadMask.cpp @@ -96,7 +96,7 @@ void parseRangeText(const std::string &inputstr, std::vector<T> &singles, // a) Find '-': boost::trim(rawstring); bool containDash(true); - if (rawstring.find_first_of("-") == std::string::npos) { + if (rawstring.find_first_of('-') == std::string::npos) { containDash = false; } diff --git a/Framework/DataHandling/src/LoadMcStas.cpp b/Framework/DataHandling/src/LoadMcStas.cpp index 9c9d0ea293834c9c6b8f7c6665e8c1d7cc68d173..9948cd1d6bb3155eaa2bb0f2ba578b370f314af4 100644 --- a/Framework/DataHandling/src/LoadMcStas.cpp +++ b/Framework/DataHandling/src/LoadMcStas.cpp @@ -510,8 +510,9 @@ void LoadMcStas::readHistogramData( // ensure that specified name is given to workspace (eventWS) when added to // outputGroup - std::string nameOfGroupWS = getProperty("OutputWorkspace"); - std::string nameUserSee = nameAttrValueTITLE + "_" + nameOfGroupWS; + std::string nameUserSee = std::string(nameAttrValueTITLE) + .append("_") + .append(getProperty("OutputWorkspace")); std::string extraProperty = "Outputworkspace_dummy_" + std::to_string(m_countNumWorkspaceAdded); declareProperty(Kernel::make_unique<WorkspaceProperty<Workspace>>( diff --git a/Framework/DataHandling/src/LoadRawHelper.cpp b/Framework/DataHandling/src/LoadRawHelper.cpp index 3215c382b24a3c20c7cf9874279a50fa6884cc30..c561c784a8a339680b4d6f8db19aeb94a0151346 100644 --- a/Framework/DataHandling/src/LoadRawHelper.cpp +++ b/Framework/DataHandling/src/LoadRawHelper.cpp @@ -1257,7 +1257,6 @@ LoadRawHelper::getLogFilenamesfromADS(const std::string &pathToRawFile) { std::string str; std::string path; - std::string logFile; std::set<std::string> logfilesList; Poco::Path logpath(pathToRawFile); size_t pos = pathToRawFile.find_last_of('/'); @@ -1276,10 +1275,7 @@ LoadRawHelper::getLogFilenamesfromADS(const std::string &pathToRawFile) { pos = fileName.find("txt"); if (pos == std::string::npos) continue; - logFile = path + "/" + fileName; - if (logFile.empty()) - continue; - logfilesList.insert(logFile); + logfilesList.insert(std::string(path).append("/").append(fileName)); } return (logfilesList); } diff --git a/Framework/DataHandling/src/LoadSpice2D.cpp b/Framework/DataHandling/src/LoadSpice2D.cpp index ebe36076385c2027ac1426a42a707b19903df623..cff6bafad2b41d5657245710b16306a1684255af 100644 --- a/Framework/DataHandling/src/LoadSpice2D.cpp +++ b/Framework/DataHandling/src/LoadSpice2D.cpp @@ -315,7 +315,8 @@ std::vector<int> LoadSpice2D::getData(const std::string &dataXpath = "//Data") { // iterate every detector in the xml file for (const auto &detector : detectors) { - std::string detectorXpath = dataXpath + "/" + detector; + std::string detectorXpath = + std::string(dataXpath).append("/").append(detector); // type : INT32[192,256] std::map<std::string, std::string> attributes = m_xmlHandler.get_attributes_from_tag(detectorXpath); diff --git a/Framework/DataHandling/src/LoadSpiceAscii.cpp b/Framework/DataHandling/src/LoadSpiceAscii.cpp index d0124230bb1eca10da4c2b6cd6f8ebd94d7b4eaa..ebd8b83171e21563850a7111a0488e26feab96b9 100644 --- a/Framework/DataHandling/src/LoadSpiceAscii.cpp +++ b/Framework/DataHandling/src/LoadSpiceAscii.cpp @@ -515,11 +515,11 @@ std::string LoadSpiceAscii::processDateString(const std::string &rawdate, else if (formatterms[i].find('M') != std::string::npos) { month = dateterms[i]; if (month.size() == 1) - month = "0" + month; + month.insert(0, 1, '0'); } else { day = dateterms[i]; if (day.size() == 1) - day = "0" + day; + day.insert(0, 1, '0'); } } diff --git a/Framework/DataHandling/src/PDLoadCharacterizations.cpp b/Framework/DataHandling/src/PDLoadCharacterizations.cpp index 13a815e78fbc1091c5c62aaf6a42261cbd522e8f..af48503d046948c5c421fdd27486cf4b52cf2da1 100644 --- a/Framework/DataHandling/src/PDLoadCharacterizations.cpp +++ b/Framework/DataHandling/src/PDLoadCharacterizations.cpp @@ -210,10 +210,9 @@ std::vector<std::string> PDLoadCharacterizations::getFilenames() { std::vector<std::string> filenamesFromPropertyUnraveld; std::vector<std::vector<std::string>> filenamesFromProperty = this->getProperty("Filename"); - for (auto outer : filenamesFromProperty) { - for (auto inner : outer) { - filenamesFromPropertyUnraveld.push_back(inner); - } + for (const auto &outer : filenamesFromProperty) { + filenamesFromPropertyUnraveld.insert(filenamesFromPropertyUnraveld.end(), + outer.cbegin(), outer.cend()); } // error check that something sensible was supplied if (filenamesFromPropertyUnraveld.size() > 2) { diff --git a/Framework/DataHandling/src/SaveFocusedXYE.cpp b/Framework/DataHandling/src/SaveFocusedXYE.cpp index 90c8993fd0154c64a135a57c00411bf59b345e56..4b11a0b27c71771e8227b024d71689e2e779ecff 100644 --- a/Framework/DataHandling/src/SaveFocusedXYE.cpp +++ b/Framework/DataHandling/src/SaveFocusedXYE.cpp @@ -137,7 +137,7 @@ void SaveFocusedXYE::exec() { if ((!split) && out) // Assign only one file { - const std::string file(filename + '.' + ext); + const std::string file(std::string(filename).append(".").append(ext)); Poco::File fileObj(file); const bool exists = fileObj.exists(); out.open(file.c_str(), mode); @@ -147,7 +147,8 @@ void SaveFocusedXYE::exec() { // filename-i.ext { number << "-" << i + startingbank; - const std::string file(filename + number.str() + "." + ext); + const std::string file( + std::string(filename).append(number.str()).append(".").append(ext)); Poco::File fileObj(file); const bool exists = fileObj.exists(); out.open(file.c_str(), mode); diff --git a/Framework/DataHandling/src/SaveGSS.cpp b/Framework/DataHandling/src/SaveGSS.cpp index 09f05101fcc0dcbff2af394e19b002cf699a053a..f6a1870fe222b762a5a509725016d516dbfc5023 100644 --- a/Framework/DataHandling/src/SaveGSS.cpp +++ b/Framework/DataHandling/src/SaveGSS.cpp @@ -228,7 +228,7 @@ void SaveGSS::writeGSASFile(const std::string &outfilename, bool append, std::string ext = path.getExtension(); // Chop off filename path.makeParent(); - path.append(basename + number.str() + "." + ext); + path.append(basename).append(number.str()).append(".").append(ext); Poco::File fileobj(path); const bool exists = fileobj.exists(); if (!exists || !append) diff --git a/Framework/Geometry/inc/MantidGeometry/Crystal/SpaceGroupFactory.h b/Framework/Geometry/inc/MantidGeometry/Crystal/SpaceGroupFactory.h index fd45198f439afd19a9be63a2f4e8d27661211ae1..49239db44a40d98a410ccdba3138dbca523d0b1a 100644 --- a/Framework/Geometry/inc/MantidGeometry/Crystal/SpaceGroupFactory.h +++ b/Framework/Geometry/inc/MantidGeometry/Crystal/SpaceGroupFactory.h @@ -236,8 +236,8 @@ public: if (transformedSymbol != hmSymbol && !symbolExists) { subscribeUsingGenerator<TransformationSpaceGroupGenerator>( - number, transformedSymbol, hmSymbol + "|" + transformation); - + number, transformedSymbol, + std::string(hmSymbol).append("|").append(transformation)); transformedSpaceGroupSymbols.push_back(transformedSymbol); } } diff --git a/Framework/Geometry/src/Instrument/InstrumentDefinitionParser.cpp b/Framework/Geometry/src/Instrument/InstrumentDefinitionParser.cpp index bd39329746cd72c27efc4ab948855c53239e4b14..81bc7af0decf2c611ad2ee6b84056198b8b56461 100644 --- a/Framework/Geometry/src/Instrument/InstrumentDefinitionParser.cpp +++ b/Framework/Geometry/src/Instrument/InstrumentDefinitionParser.cpp @@ -261,12 +261,15 @@ InstrumentDefinitionParser::parseXML(Kernel::ProgressBase *prog) { // Each type in the IDF must be uniquely named, hence return error if type // has already been defined if (getTypeElement.find(typeName) != getTypeElement.end()) { - g_log.error("XML file: " + filename + - "contains more than one type element named " + typeName); + g_log.error(std::string("XML file: ") + .append(filename) + .append("contains more than one type element named ") + .append(typeName)); throw Kernel::Exception::InstrumentDefinitionError( - "XML instrument file contains more than one type element named " + - typeName, - filename); + std::string( + "XML instrument file contains more than one type element named ") + .append(typeName) + .append(filename)); } getTypeElement[typeName] = pTypeElem; @@ -305,12 +308,15 @@ InstrumentDefinitionParser::parseXML(Kernel::ProgressBase *prog) { // Each type in the IDF must be uniquely named, hence return error if type // has already been defined if (getTypeElement.find(typeName) != getTypeElement.end()) { - g_log.error("XML file: " + filename + - "contains more than one type element named " + typeName); + g_log.error(std::string("XML file: ") + .append(filename) + .append("contains more than one type element named ") + .append(typeName)); throw Kernel::Exception::InstrumentDefinitionError( - "XML instrument file contains more than one type element named " + - typeName, - filename); + std::string( + "XML instrument file contains more than one type element named ") + .append(typeName) + .append(filename)); } getTypeElement[typeName] = pTypeElem; diff --git a/Framework/Kernel/src/ConfigService.cpp b/Framework/Kernel/src/ConfigService.cpp index e60311f488d1aaeebbafa679bf0f5a42221e5dc4..a15083587c3d8aede394c40b6363dc7f59159e6e 100644 --- a/Framework/Kernel/src/ConfigService.cpp +++ b/Framework/Kernel/src/ConfigService.cpp @@ -857,7 +857,7 @@ void ConfigServiceImpl::saveConfig(const std::string &filename) const { // If it does exist make sure the value is current std::string value = getString(key, false); Poco::replaceInPlace(value, "\\", "\\\\"); // replace single \ with double - updated_file += key + "=" + value; + updated_file.append(key).append("=").append(value); // Remove the key from the changed key list m_changed_keys.erase(key); } @@ -957,9 +957,9 @@ void ConfigServiceImpl::getKeysRecursive( for (auto &rootKey : rootKeys) { std::string searchString; if (root.empty()) { - searchString = rootKey; + searchString.append(rootKey); } else { - searchString = root + "." + rootKey; + searchString.append(root).append(".").append(rootKey); } getKeysRecursive(searchString, allKeys); diff --git a/Framework/Kernel/src/LogParser.cpp b/Framework/Kernel/src/LogParser.cpp index 453a2570ae10f2d90fae63486904c125cee87885..0becfc1ffa73b9a8930f579fa3361f732ac7232b 100644 --- a/Framework/Kernel/src/LogParser.cpp +++ b/Framework/Kernel/src/LogParser.cpp @@ -62,8 +62,10 @@ Kernel::Property *LogParser::createLogProperty(const std::string &logFName, // if the line doesn't start with a time treat it as a continuation of the // previous data if (change_times.empty() || isNumeric) { // if there are no previous data - std::string mess = - "Cannot parse log file " + logFName + ". Line:" + str; + std::string mess = std::string("Cannot parse log file ") + .append(logFName) + .append(". Line:") + .append(str); g_log.error(mess); throw std::logic_error(mess); } diff --git a/Framework/Kernel/src/MultiFileValidator.cpp b/Framework/Kernel/src/MultiFileValidator.cpp index 3e82afc892fc25b27127bf2c4cf23f381fe69496..4bb86416ba0ad24040da0bfce8c83f8bfbd484a5 100644 --- a/Framework/Kernel/src/MultiFileValidator.cpp +++ b/Framework/Kernel/src/MultiFileValidator.cpp @@ -66,7 +66,7 @@ std::string MultiFileValidator::checkValidity( accumulatedErrors = "Could not validate the following file(s): " + valueIt; else - accumulatedErrors = accumulatedErrors + ", " + valueIt; + accumulatedErrors.append(", ").append(valueIt); } } } diff --git a/Framework/Kernel/src/NexusDescriptor.cpp b/Framework/Kernel/src/NexusDescriptor.cpp index 357e235674cce1e6c5974de17fe959605f9c7a4c..3efd1c29011fc55152493066945571888012f503 100644 --- a/Framework/Kernel/src/NexusDescriptor.cpp +++ b/Framework/Kernel/src/NexusDescriptor.cpp @@ -245,7 +245,8 @@ void NexusDescriptor::walkFile(::NeXus::File &file, const std::string &rootPath, for (auto it = dirents.begin(); it != itend; ++it) { const std::string &entryName = it->first; const std::string &entryClass = it->second; - const std::string entryPath = rootPath + "/" + entryName; + const std::string entryPath = + std::string(rootPath).append("/").append(entryName); if (entryClass == "SDS") { pmap.emplace(entryPath, entryClass); } else if (entryClass == "CDF0.0") { diff --git a/Framework/MDAlgorithms/src/CutMD.cpp b/Framework/MDAlgorithms/src/CutMD.cpp index 114af43693d128fa6abe0b8a74b008c7ec570512..024f5545e9018d291eee051873f1daea1e85938b 100644 --- a/Framework/MDAlgorithms/src/CutMD.cpp +++ b/Framework/MDAlgorithms/src/CutMD.cpp @@ -446,7 +446,9 @@ void CutMD::exec() { vecStr = boost::algorithm::join(vec, ", "); } - const std::string value = label + ", " + unit + ", " + vecStr; + const std::string value = + std::string(label).append(", ").append(unit).append(", ").append( + vecStr); cutAlg->setProperty("BasisVector" + std::to_string(i), value); } diff --git a/Framework/MDAlgorithms/src/MDTransfAxisNames.cpp b/Framework/MDAlgorithms/src/MDTransfAxisNames.cpp index 9c4713e79bf2743b6d66941d167c69f0c3642166..af984187c4b5c7aeb7b78d1b91d83944232b8073 100644 --- a/Framework/MDAlgorithms/src/MDTransfAxisNames.cpp +++ b/Framework/MDAlgorithms/src/MDTransfAxisNames.cpp @@ -83,10 +83,10 @@ std::string makeAxisName(const Kernel::V3D &Dir, name += "-"; } if (std::fabs(absDir[i] - 1) < eps) { - name += mainName + separator; + name.append(mainName).append(separator); continue; } - name += sprintfd(absDir[i], eps) + mainName + separator; + name.append(sprintfd(absDir[i], eps)).append(mainName).append(separator); } return name;