From: Arthur Cohen <[email protected]>

Hi,

When a changelog is generated for an enum class, the entry only lists
it as `(enum class)` instead of `(enum class Foo)`, which defeats the
point. We use enum classes a *lot* in the Rust frontend, and always
have to modify that part of the generated Changelog skeleton manually
when creating or modifying such a class, which sucks.

Note that my regex-fu is very weak and there's probably a better way to
do this, which I'd be happy to use instead. Please let me know.

Best,

Arthur

This avoids `enum class Foo` showing up as `enum class` in the generated 
Changelog and instead
properly recognizes the start of the type.

contrib/ChangeLog:

        * mklog.py: Add "enum class" as a type starter to the struct regex.
---
 contrib/mklog.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/contrib/mklog.py b/contrib/mklog.py
index 557ab42e7ff..fa0b1273863 100755
--- a/contrib/mklog.py
+++ b/contrib/mklog.py
@@ -77,7 +77,7 @@ dg_regex = re.compile(r'{\s+dg-(error|warning)')
 pr_filename_regex = re.compile(r'(^|[\W_])[Pp][Rr](?P<pr>\d{4,})')
 identifier_regex = re.compile(r'^([a-zA-Z0-9_#].*)')
 comment_regex = re.compile(r'^\/\*')
-struct_regex = re.compile(r'^(class|struct|union|enum)\s+'
+struct_regex = re.compile(r'^(class|struct|union|enum class|enum)\s+'
                           r'(GTY\(.*\)\s+)?([a-zA-Z0-9_]+)')
 macro_regex = re.compile(r'#\s*(define|undef)\s+([a-zA-Z0-9_]+)')
 super_macro_regex = re.compile(r'^DEF[A-Z0-9_]+\s*\(([a-zA-Z0-9_]+)')
-- 
2.50.1

Reply via email to