Mercurial > jwe > octave
changeset 23804:8057d3f0673d
Use C++11 raw string literals to avoid escaping backslashes in strings.
* file-editor-tab.cc, octave-qscintilla.cc, graphics.cc, help.cc, input.cc,
oct-stream.cc, regexp.cc, sparse-xdiv.cc, sysdep.cc, utils.cc, xdiv.cc,
ov-java.cc, ov.cc, file-ops.cc, lo-sysdep.cc, oct-env.cc, mkoctfile.in.cc,
shared-fcns.h:
Replace regular strings containing "\\" patterns with R"(...\...)".
author | Rik <rik@octave.org> |
---|---|
date | Fri, 28 Jul 2017 11:19:36 -0700 |
parents | 90689bdbe048 |
children | bf061a189af9 |
files | libgui/src/m-editor/file-editor-tab.cc libgui/src/m-editor/octave-qscintilla.cc libinterp/corefcn/graphics.cc libinterp/corefcn/help.cc libinterp/corefcn/input.cc libinterp/corefcn/oct-stream.cc libinterp/corefcn/regexp.cc libinterp/corefcn/sparse-xdiv.cc libinterp/corefcn/sysdep.cc libinterp/corefcn/utils.cc libinterp/corefcn/xdiv.cc libinterp/octave-value/ov-java.cc libinterp/octave-value/ov.cc liboctave/system/file-ops.cc liboctave/system/lo-sysdep.cc liboctave/system/oct-env.cc src/mkoctfile.in.cc src/shared-fcns.h |
diffstat | 18 files changed, 37 insertions(+), 37 deletions(-) [+] |
line wrap: on
line diff
--- a/libgui/src/m-editor/file-editor-tab.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libgui/src/m-editor/file-editor-tab.cc Fri Jul 28 11:19:36 2017 -0700 @@ -744,9 +744,9 @@ for (i=1; i<=3; i++) // test the first 5 keyword sets { - keyword = QString (lexer->keywords (i)); // get list - keyword_list = keyword.split (QRegExp ("\\s+")); // split - for (j = 0; j < keyword_list.size (); j++) // add to API + keyword = QString (lexer->keywords (i)); // get list + keyword_list = keyword.split (QRegExp (R"(\s+)")); // split + for (j = 0; j < keyword_list.size (); j++) // add to API _lexer_apis->add (keyword_list.at (j)); } }
--- a/libgui/src/m-editor/octave-qscintilla.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libgui/src/m-editor/octave-qscintilla.cc Fri Jul 28 11:19:36 2017 -0700 @@ -497,7 +497,7 @@ return; if (next_start == start) // same => check if already is "end" { - QRegExp rx_start = QRegExp ("(\\w+)"); + QRegExp rx_start = QRegExp (R"((\w+))"); int tmp = rx_start.indexIn (next_line, start); if (tmp != -1 && is_end (rx_start.cap(1), first_word)) return;
--- a/libinterp/corefcn/graphics.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/graphics.cc Fri Jul 28 11:19:36 2017 -0700 @@ -2511,9 +2511,9 @@ else { // Matlab specifically uses "\default" to escape string setting - if (sval == "\\default") + if (sval == R"(\default)") rep->set (pname, "default"); - else if (sval == "\\factory") + else if (sval == R"(\factory)") rep->set (pname, "factory"); else rep->set (pname, val); @@ -11784,7 +11784,7 @@ if (pname != "timeout") { - if (pname.compare ("\\timeout")) + if (pname.compare (R"(\timeout)")) pname = "timeout"; static octave_value wf_listener;
--- a/libinterp/corefcn/help.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/help.cc Fri Jul 28 11:19:36 2017 -0700 @@ -105,8 +105,8 @@ ".^", "./", "/", - ".\\", - "\\", + R"(.\)", + R"(\)", ":", ";", "<",
--- a/libinterp/corefcn/input.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/input.cc Fri Jul 28 11:19:36 2017 -0700 @@ -127,7 +127,7 @@ // Use literal "octave" instead of "\\s" to avoid setting the prompt // to "octave.exe" or "octave-gui", etc. - VPS1 = "octave:\\#> "; + VPS1 = R"(octave:\#> )"; VPS2 = "> "; std::string VPS4 = "+ ";
--- a/libinterp/corefcn/oct-stream.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/oct-stream.cc Fri Jul 28 11:19:36 2017 -0700 @@ -3693,7 +3693,7 @@ else if (param == "endofline") { bool valid = true; - std::string s = args(i+1).xstring_value ("%s: EndOfLine must be at most one character or '\\r\\n'", who.c_str ()); + std::string s = args(i+1).xstring_value (R"(%s: EndOfLine must be at most one character or '\r\n')", who.c_str ()); if (args(i+1).is_sq_string ()) s = do_string_escapes (s); int l = s.length (); @@ -3712,7 +3712,7 @@ valid = false; if (! valid) - error ("%s: EndOfLine must be at most one character or '\\r\\n'", + error (R"(%s: EndOfLine must be at most one character or '\r\n')", who.c_str ()); } else
--- a/libinterp/corefcn/regexp.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/regexp.cc Fri Jul 28 11:19:36 2017 -0700 @@ -109,7 +109,7 @@ { bad_esc_seq = true; tmpi = 0; - warning ("malformed octal escape sequence '\\o' -- converting to '\\0'"); + warning (R"(malformed octal escape sequence '\o' -- converting to '\0')"); } retval[i] = tmpi; j = k - 1; @@ -204,7 +204,7 @@ } if (bad_esc_seq || (brace && s[k++] != '}')) { - warning ("malformed octal escape sequence '\\o' -- converting to '\\0'"); + warning (R"(malformed octal escape sequence '\o' -- converting to '\0')"); tmpi = 0; } retval[i] = tmpi; @@ -241,7 +241,7 @@ } if (bad_esc_seq || (brace && s[k++] != '}')) { - warning ("malformed hex escape sequence '\\x' -- converting to '\\0'"); + warning (R"(malformed hex escape sequence '\x' -- converting to '\0')"); tmpi = 0; } retval[i] = tmpi;
--- a/libinterp/corefcn/sparse-xdiv.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/sparse-xdiv.cc Fri Jul 28 11:19:36 2017 -0700 @@ -59,7 +59,7 @@ octave_idx_type a_nc = a.cols (); octave_idx_type b_nc = b.cols (); - octave::err_nonconformant ("operator \\", a_nr, a_nc, b_nr, b_nc); + octave::err_nonconformant (R"(operator \)", a_nr, a_nc, b_nr, b_nc); } return true;
--- a/libinterp/corefcn/sysdep.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/sysdep.cc Fri Jul 28 11:19:36 2017 -0700 @@ -149,7 +149,7 @@ if (! bin_dir.empty ()) { - size_t pos = bin_dir.rfind ("\\bin\\"); + size_t pos = bin_dir.rfind (R"(\bin\)"); if (pos != std::string::npos) octave::sys::env::putenv ("OCTAVE_HOME", bin_dir.substr (0, pos)); @@ -584,7 +584,7 @@ // P_tmpdir, or they define it to a single backslash, neither of which // is particularly helpful. - if (retval.empty () || retval == "\\") + if (retval.empty () || retval == '\\') { retval = octave::sys::env::getenv ("TEMP"); @@ -592,7 +592,7 @@ retval = octave::sys::env::getenv ("TMP"); if (retval.empty ()) - retval = "c:\\temp"; + retval = R"(c:\temp)"; } return retval;
--- a/libinterp/corefcn/utils.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/utils.cc Fri Jul 28 11:19:36 2017 -0700 @@ -714,7 +714,7 @@ } if (k == j+1) - warning ("malformed hex escape sequence '\\x' -- converting to '\\0'"); + warning (R"(malformed hex escape sequence '\x' -- converting to '\0')"); retval[i] = tmpi; j = k - 1; @@ -722,7 +722,7 @@ } default: - warning ("unrecognized escape sequence '\\%c' -- converting to '%c'", s[j], s[j]); + warning (R"(unrecognized escape sequence '\%c' -- converting to '%c')", s[j], s[j]); retval[i] = s[j]; break; }
--- a/libinterp/corefcn/xdiv.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/corefcn/xdiv.cc Fri Jul 28 11:19:36 2017 -0700 @@ -67,7 +67,7 @@ : a.rows ()); octave_idx_type b_nc = b.cols (); - octave::err_nonconformant ("operator \\", a_nr, a_nc, b_nr, b_nc); + octave::err_nonconformant (R"(operator \)", a_nr, a_nc, b_nr, b_nc); } return true;
--- a/libinterp/octave-value/ov-java.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/octave-value/ov-java.cc Fri Jul 28 11:19:36 2017 -0700 @@ -519,7 +519,7 @@ // and load the symbol from the dll. std::string key, value; - key = "software\\javasoft\\java runtime environment"; + key = R"(software\javasoft\java runtime environment)"; value = octave::sys::env::getenv ("JAVA_VERSION"); if (value.empty ()) @@ -534,7 +534,7 @@ value = regval; } - key = key + "\\" + value; + key = key + '\\' + value; value = "RuntimeLib"; jvm_lib_path = read_registry_string (key, value);
--- a/libinterp/octave-value/ov.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/libinterp/octave-value/ov.cc Fri Jul 28 11:19:36 2017 -0700 @@ -193,7 +193,7 @@ return "^"; case op_ldiv: - return "\\"; + return R"(\)"; case op_lt: return "<"; @@ -223,7 +223,7 @@ return ".^"; case op_el_ldiv: - return ".\\"; + return R"(.\)"; case op_el_and: return "&"; @@ -364,7 +364,7 @@ return "/="; case op_ldiv_eq: - return "\\="; + return R"(\=)"; case op_pow_eq: return "^="; @@ -376,7 +376,7 @@ return "./="; case op_el_ldiv_eq: - return ".\\="; + return R"(.\=)"; case op_el_pow_eq: return ".^=";
--- a/liboctave/system/file-ops.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/liboctave/system/file-ops.cc Fri Jul 28 11:19:36 2017 -0700 @@ -234,7 +234,7 @@ std::string dir_sep_str (void) { #if (defined (OCTAVE_HAVE_WINDOWS_FILESYSTEM) && ! defined (OCTAVE_HAVE_POSIX_FILESYSTEM)) - return "\\"; + return R"(\)"; #else return "/"; #endif @@ -243,7 +243,7 @@ std::string dir_sep_chars (void) { #if defined (OCTAVE_HAVE_WINDOWS_FILESYSTEM) - return "/\\"; + return R"(/\)"; #else return dir_sep_str (); #endif
--- a/liboctave/system/lo-sysdep.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/liboctave/system/lo-sysdep.cc Fri Jul 28 11:19:36 2017 -0700 @@ -62,7 +62,7 @@ #if defined (OCTAVE_USE_WINDOWS_API) if (path.length () == 2 && path[1] == ':') - path += "\\"; + path += '\\'; #endif return octave_chdir_wrapper (path.c_str ());
--- a/liboctave/system/oct-env.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/liboctave/system/oct-env.cc Fri Jul 28 11:19:36 2017 -0700 @@ -207,8 +207,8 @@ // Some versions of MinGW and MSVC either don't define P_tmpdir, or // define it to a single backslash. In such cases just use C:\temp. - if (tempd.empty () || tempd == "\\") - tempd = "c:\\temp"; + if (tempd.empty () || tempd == '\\') + tempd = R"(c:\temp)"; #else
--- a/src/mkoctfile.in.cc Fri Jul 28 10:34:33 2017 -0700 +++ b/src/mkoctfile.in.cc Fri Jul 28 11:19:36 2017 -0700 @@ -151,7 +151,7 @@ #if defined (OCTAVE_USE_WINDOWS_API) std::string DEFAULT_INCFLAGS - = "-I" + quote_path (vars["OCTINCLUDEDIR"] + "\\..") + = "-I" + quote_path (vars["OCTINCLUDEDIR"] + R"(\..)") + " -I" + quote_path (vars["OCTINCLUDEDIR"]); #else std::string DEFAULT_INCFLAGS
--- a/src/shared-fcns.h Fri Jul 28 10:34:33 2017 -0700 +++ b/src/shared-fcns.h Fri Jul 28 11:19:36 2017 -0700 @@ -52,7 +52,7 @@ namebuf[MAX_PATH] = '\0'; std::string exe_name = namebuf; - size_t pos = exe_name.rfind ("\\"); + size_t pos = exe_name.rfind ('\\'); if (pos != std::string::npos) bin_dir = exe_name.substr (0, pos + 1); @@ -60,7 +60,7 @@ if (! bin_dir.empty ()) { - size_t pos = bin_dir.rfind ("\\bin\\"); + size_t pos = bin_dir.rfind (R"(\bin\)"); if (pos != std::string::npos) retval = bin_dir.substr (0, pos); @@ -82,7 +82,7 @@ #endif #if defined (OCTAVE_HAVE_WINDOWS_FILESYSTEM) -static std::string dir_sep_chars = "/\\"; +static std::string dir_sep_chars = R"(/\)"; #else static std::string dir_sep_chars = "/"; #endif