Use `re.fullmatch` instead of `re.match`.
diff --git a/compiler/back_end/cpp/header_generator.py b/compiler/back_end/cpp/header_generator.py index 320b15f..e599585 100644 --- a/compiler/back_end/cpp/header_generator.py +++ b/compiler/back_end/cpp/header_generator.py
@@ -1739,8 +1739,8 @@ if attr.name.text != attributes.Attribute.NAMESPACE: return namespace_value = ir_data_utils.reader(attr).value.string_constant - if not re.match(_NS_RE, namespace_value.text): - if re.match(_NS_EMPTY_RE, namespace_value.text): + if not re.fullmatch(_NS_RE, namespace_value.text): + if re.fullmatch(_NS_EMPTY_RE, namespace_value.text): errors.append( [ error.error( @@ -1750,7 +1750,7 @@ ) ] ) - elif re.match(_NS_GLOBAL_RE, namespace_value.text): + elif re.fullmatch(_NS_GLOBAL_RE, namespace_value.text): errors.append( [ error.error(
diff --git a/compiler/front_end/attribute_checker.py b/compiler/front_end/attribute_checker.py index 9e7fec2..78a2a1e 100644 --- a/compiler/front_end/attribute_checker.py +++ b/compiler/front_end/attribute_checker.py
@@ -44,8 +44,8 @@ def _valid_back_ends(attr, module_source_file): - if not re.match( - r"^(?:\s*[a-z][a-z0-9_]*\s*(?:,\s*[a-z][a-z0-9_]*\s*)*,?)?\s*$", + if not re.fullmatch( + r"(?:\s*[a-z][a-z0-9_]*\s*(?:,\s*[a-z][a-z0-9_]*\s*)*,?)?\s*", attr.value.string_constant.text, ): return [