Blob Blame History Raw
commit 0fbfbe05028ad18efda786a256a2738d2c231ed4
Author: Mark Wielaard <mark@klomp.org>
Date:   Fri Nov 17 13:31:52 2023 +0100

    valgrind-monitor.py regular expressions should use raw strings
    
    With python 3.12 gdb will produce the following SyntaxWarning when
    loading valgrind-monitor-def.py:
    
      /usr/share/gdb/auto-load/valgrind-monitor-def.py:214:
      SyntaxWarning: invalid escape sequence '\['
        if re.fullmatch("^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):
    
    In a future python version this will become an SyntaxError.
    
    Use a raw strings for the regular expression.
    
    https://bugs.kde.org/show_bug.cgi?id=476708

diff --git a/coregrind/m_gdbserver/valgrind-monitor-def.py b/coregrind/m_gdbserver/valgrind-monitor-def.py
index b4e7b992d..d74b1590c 100644
--- a/coregrind/m_gdbserver/valgrind-monitor-def.py
+++ b/coregrind/m_gdbserver/valgrind-monitor-def.py
@@ -211,7 +211,7 @@ class Valgrind_ADDR_LEN_opt(Valgrind_Command):
 For compatibility reason with the Valgrind gdbserver monitor command,
 we detect and accept usages such as 0x1234ABCD[10]."""
     def invoke(self, arg_str : str, from_tty : bool) -> None:
-        if re.fullmatch("^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):
+        if re.fullmatch(r"^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):
             arg_str = arg_str.replace("[", " ")
             arg_str = arg_str.replace("]", " ")
         eval_execute_2(self, arg_str,