]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
diagnostics: convert enum logical_location_kind to enum class
authorDavid Malcolm <dmalcolm@redhat.com>
Mon, 9 Jun 2025 18:15:25 +0000 (14:15 -0400)
committerDavid Malcolm <dmalcolm@redhat.com>
Mon, 9 Jun 2025 18:15:25 +0000 (14:15 -0400)
No functional change intended.

gcc/ChangeLog:
* diagnostic-format-sarif.cc (maybe_get_sarif_kind): Update for
conversion of enum logical_location_kind to enum class.
* diagnostic.cc (logical_location_manager::function_p): Likewise.
* libgdiagnostics.cc (html-output/missing-semicolon.py::get_kind):
Likewise.
* logical-location.h (enum logical_location_kind): Convert to...
(enum class logical_location_kind): ...this.
* selftest-logical-location.cc
(test_logical_location_manager::item_from_funcname): Update for
conversion of enum logical_location_kind to enum class.
* tree-logical-location.cc
(tree_logical_location_manager::get_kind): Likewise.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
gcc/diagnostic-format-sarif.cc
gcc/diagnostic.cc
gcc/libgdiagnostics.cc
gcc/logical-location.h
gcc/selftest-logical-location.cc
gcc/tree-logical-location.cc

index 7dcd126aeb231134f5cf016f528ca6485c41b124..853a8333b3ccfba8bc12dacbffe684f4d55272ff 100644 (file)
@@ -2735,51 +2735,51 @@ maybe_get_sarif_kind (enum logical_location_kind kind)
     {
     default:
       gcc_unreachable ();
-    case LOGICAL_LOCATION_KIND_UNKNOWN:
+    case logical_location_kind::unknown:
       return nullptr;
 
     /* Kinds within executable code.  */
-    case LOGICAL_LOCATION_KIND_FUNCTION:
+    case logical_location_kind::function:
       return "function";
-    case LOGICAL_LOCATION_KIND_MEMBER:
+    case logical_location_kind::member:
       return "member";
-    case LOGICAL_LOCATION_KIND_MODULE:
+    case logical_location_kind::module_:
       return "module";
-    case LOGICAL_LOCATION_KIND_NAMESPACE:
+    case logical_location_kind::namespace_:
       return "namespace";
-    case LOGICAL_LOCATION_KIND_TYPE:
+    case logical_location_kind::type:
       return "type";
-    case LOGICAL_LOCATION_KIND_RETURN_TYPE:
+    case logical_location_kind::return_type:
       return "returnType";
-    case LOGICAL_LOCATION_KIND_PARAMETER:
+    case logical_location_kind::parameter:
       return "parameter";
-    case LOGICAL_LOCATION_KIND_VARIABLE:
+    case logical_location_kind::variable:
       return "variable";
 
     /* Kinds within XML or HTML documents.  */
-    case LOGICAL_LOCATION_KIND_ELEMENT:
+    case logical_location_kind::element:
       return "element";
-    case LOGICAL_LOCATION_KIND_ATTRIBUTE:
+    case logical_location_kind::attribute:
       return "attribute";
-    case LOGICAL_LOCATION_KIND_TEXT:
+    case logical_location_kind::text:
       return "text";
-    case LOGICAL_LOCATION_KIND_COMMENT:
+    case logical_location_kind::comment:
       return "comment";
-    case LOGICAL_LOCATION_KIND_PROCESSING_INSTRUCTION:
+    case logical_location_kind::processing_instruction:
       return "processingInstruction";
-    case LOGICAL_LOCATION_KIND_DTD:
+    case logical_location_kind::dtd:
       return "dtd";
-    case LOGICAL_LOCATION_KIND_DECLARATION:
+    case logical_location_kind::declaration:
       return "declaration";
 
     /* Kinds within JSON documents.  */
-    case LOGICAL_LOCATION_KIND_OBJECT:
+    case logical_location_kind::object:
       return "object";
-    case LOGICAL_LOCATION_KIND_ARRAY:
+    case logical_location_kind::array:
       return "array";
-    case LOGICAL_LOCATION_KIND_PROPERTY:
+    case logical_location_kind::property:
       return "property";
-    case LOGICAL_LOCATION_KIND_VALUE:
+    case logical_location_kind::value:
       return "value";
     }
 }
index 5b8eb7d1404288a06b044da7d26fa0331a3edfee..ab52e34e2fb56b4c91dbcee4b6016e4e6aca4795 100644 (file)
@@ -1059,17 +1059,17 @@ logical_location_manager::function_p (key k) const
     {
     default:
       gcc_unreachable ();
-    case LOGICAL_LOCATION_KIND_UNKNOWN:
-    case LOGICAL_LOCATION_KIND_MODULE:
-    case LOGICAL_LOCATION_KIND_NAMESPACE:
-    case LOGICAL_LOCATION_KIND_TYPE:
-    case LOGICAL_LOCATION_KIND_RETURN_TYPE:
-    case LOGICAL_LOCATION_KIND_PARAMETER:
-    case LOGICAL_LOCATION_KIND_VARIABLE:
+    case logical_location_kind::unknown:
+    case logical_location_kind::module_:
+    case logical_location_kind::namespace_:
+    case logical_location_kind::type:
+    case logical_location_kind::return_type:
+    case logical_location_kind::parameter:
+    case logical_location_kind::variable:
       return false;
 
-    case LOGICAL_LOCATION_KIND_FUNCTION:
-    case LOGICAL_LOCATION_KIND_MEMBER:
+    case logical_location_kind::function:
+    case logical_location_kind::member:
       return true;
     }
 }
index 0040db463dc1c3062b2291829cf3fcec09b04ba7..29f63eb720c0fdd0e02225fefc4a23fdcfd6b54b 100644 (file)
@@ -307,45 +307,45 @@ public:
        gcc_unreachable ();
 
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_FUNCTION:
-       return LOGICAL_LOCATION_KIND_FUNCTION;
+       return logical_location_kind::function;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_MEMBER:
-       return LOGICAL_LOCATION_KIND_MEMBER;
+       return logical_location_kind::member;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_MODULE:
-       return LOGICAL_LOCATION_KIND_MODULE;
+       return logical_location_kind::module_;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_NAMESPACE:
-       return LOGICAL_LOCATION_KIND_NAMESPACE;
+       return logical_location_kind::namespace_;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_TYPE:
-       return LOGICAL_LOCATION_KIND_TYPE;
+       return logical_location_kind::type;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_RETURN_TYPE:
-       return LOGICAL_LOCATION_KIND_RETURN_TYPE;
+       return logical_location_kind::return_type;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_PARAMETER:
-       return LOGICAL_LOCATION_KIND_PARAMETER;
+       return logical_location_kind::parameter;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_VARIABLE:
-       return LOGICAL_LOCATION_KIND_VARIABLE;
+       return logical_location_kind::variable;
 
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_ELEMENT:
-       return LOGICAL_LOCATION_KIND_ELEMENT;
+       return logical_location_kind::element;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_ATTRIBUTE:
-       return LOGICAL_LOCATION_KIND_ATTRIBUTE;
+       return logical_location_kind::attribute;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_TEXT:
-       return LOGICAL_LOCATION_KIND_TEXT;
+       return logical_location_kind::text;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_COMMENT:
-       return LOGICAL_LOCATION_KIND_COMMENT;
+       return logical_location_kind::comment;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_PROCESSING_INSTRUCTION:
-       return LOGICAL_LOCATION_KIND_PROCESSING_INSTRUCTION;
+       return logical_location_kind::processing_instruction;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_DTD:
-       return LOGICAL_LOCATION_KIND_DTD;
+       return logical_location_kind::dtd;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_DECLARATION:
-       return LOGICAL_LOCATION_KIND_DECLARATION;
+       return logical_location_kind::declaration;
 
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_OBJECT:
-         return LOGICAL_LOCATION_KIND_OBJECT;
+         return logical_location_kind::object;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_ARRAY:
-       return LOGICAL_LOCATION_KIND_ARRAY;
+       return logical_location_kind::array;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_PROPERTY:
-       return LOGICAL_LOCATION_KIND_PROPERTY;
+       return logical_location_kind::property;
       case DIAGNOSTIC_LOGICAL_LOCATION_KIND_VALUE:
-       return LOGICAL_LOCATION_KIND_VALUE;
+       return logical_location_kind::value;
       }
   }
 
index dba9dc4010bf283201e05cd9b20231fba1e88388..3522934a90b445aee3a4d717ad48c1c3400feb09 100644 (file)
@@ -29,34 +29,34 @@ along with GCC; see the file COPYING3.  If not see
    Roughly corresponds to logicalLocation's "kind" property in SARIF v2.1.0
    (section 3.33.7).  */
 
-enum logical_location_kind
+enum class logical_location_kind
 {
-  LOGICAL_LOCATION_KIND_UNKNOWN,
+  unknown,
 
   /* Kinds within executable code.  */
-  LOGICAL_LOCATION_KIND_FUNCTION,
-  LOGICAL_LOCATION_KIND_MEMBER,
-  LOGICAL_LOCATION_KIND_MODULE,
-  LOGICAL_LOCATION_KIND_NAMESPACE,
-  LOGICAL_LOCATION_KIND_TYPE,
-  LOGICAL_LOCATION_KIND_RETURN_TYPE,
-  LOGICAL_LOCATION_KIND_PARAMETER,
-  LOGICAL_LOCATION_KIND_VARIABLE,
+  function,
+  member,
+  module_,
+  namespace_,
+  type,
+  return_type,
+  parameter,
+  variable,
 
   /* Kinds within XML or HTML documents.  */
-  LOGICAL_LOCATION_KIND_ELEMENT,
-  LOGICAL_LOCATION_KIND_ATTRIBUTE,
-  LOGICAL_LOCATION_KIND_TEXT,
-  LOGICAL_LOCATION_KIND_COMMENT,
-  LOGICAL_LOCATION_KIND_PROCESSING_INSTRUCTION,
-  LOGICAL_LOCATION_KIND_DTD,
-  LOGICAL_LOCATION_KIND_DECLARATION,
+  element,
+  attribute,
+  text,
+  comment,
+  processing_instruction,
+  dtd,
+  declaration,
 
   /* Kinds within JSON documents.  */
-  LOGICAL_LOCATION_KIND_OBJECT,
-  LOGICAL_LOCATION_KIND_ARRAY,
-  LOGICAL_LOCATION_KIND_PROPERTY,
-  LOGICAL_LOCATION_KIND_VALUE
+  object,
+  array,
+  property,
+  value
 };
 
 /* We want to efficiently support passing around logical locations in the
index 5f33b48c849f2c1ac5a0f1af55a267c58c319f67..63b9fb4404c5e2f640fbaa143b3db0de731a5fd8 100644 (file)
@@ -90,7 +90,7 @@ test_logical_location_manager::item_from_funcname (const char *funcname)
   if (item **slot = m_name_to_item_map.get (funcname))
     return *slot;
 
-  item *i = new item (LOGICAL_LOCATION_KIND_FUNCTION, funcname);
+  item *i = new item (logical_location_kind::function, funcname);
   m_name_to_item_map.put (funcname, i);
   return i;
 }
index 1b2702fdb8a016c92c01b62b0d0a103959dfe871..1d0cc5803dd76c224b0e36436698ccd96cdd0c74 100644 (file)
@@ -90,18 +90,18 @@ tree_logical_location_manager::get_kind (key k) const
   switch (TREE_CODE (node))
     {
     default:
-      return LOGICAL_LOCATION_KIND_UNKNOWN;
+      return logical_location_kind::unknown;
     case FUNCTION_DECL:
-      return LOGICAL_LOCATION_KIND_FUNCTION;
+      return logical_location_kind::function;
     case PARM_DECL:
-      return LOGICAL_LOCATION_KIND_PARAMETER;
+      return logical_location_kind::parameter;
     case VAR_DECL:
-      return LOGICAL_LOCATION_KIND_VARIABLE;
+      return logical_location_kind::variable;
     case NAMESPACE_DECL:
-      return LOGICAL_LOCATION_KIND_NAMESPACE;
+      return logical_location_kind::namespace_;
 
     case RECORD_TYPE:
-      return LOGICAL_LOCATION_KIND_TYPE;
+      return logical_location_kind::type;
     }
 }