]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gcc/rust/ChangeLog:
authorOm Swaroop Nayak <96killerat96@gmail.com>
Wed, 1 Jan 2025 17:02:02 +0000 (09:02 -0800)
committerPhilip Herron <philip.herron@embecosm.com>
Fri, 10 Jan 2025 12:34:55 +0000 (12:34 +0000)
* ast/rust-collect-lang-items.cc (get_lang_item_attr): "removed checker fn"
* util/rust-attributes.cc (Attributes::is_lang_item): "added fn"
* util/rust-attributes.h: "added fn"

Signed-off-by: Om Swaroop Nayak <96killerat96@gmail.com>
gcc/rust/ast/rust-collect-lang-items.cc
gcc/rust/util/rust-attributes.cc
gcc/rust/util/rust-attributes.h

index 50d134a429f514171f0845cce8d8919adf7dd0c7..ec6919dca14ecf6dfd5f91b724e2bd68c7c0a95f 100644 (file)
@@ -40,12 +40,7 @@ get_lang_item_attr (const T &maybe_lang_item)
          continue;
        }
 
-      bool is_lang_item = str_path == Values::Attributes::LANG
-                         && attr.has_attr_input ()
-                         && attr.get_attr_input ().get_attr_input_type ()
-                              == AST::AttrInput::AttrInputType::LITERAL;
-
-      if (is_lang_item)
+      if (Analysis::Attributes::is_lang_item (str_path, attr))
        {
          auto &literal
            = static_cast<AST::AttrInputLiteral &> (attr.get_attr_input ());
index 45ebf8c6546119032235b43c8b8236eeaf1aa95c..1a66be25ccfb49d3ce675c9d0ebbf098452d1c4a 100644 (file)
@@ -37,6 +37,14 @@ Attributes::is_known (const std::string &attribute_path)
 
   return !lookup.is_error ();
 }
+bool
+Attributes::is_lang_item (const std::string &attribute_path,
+                         const AST::Attribute &attr)
+{
+  return ((attribute_path == Values::Attributes::LANG) && attr.has_attr_input ()
+         && (attr.get_attr_input ().get_attr_input_type ()
+             == AST::AttrInput::AttrInputType::LITERAL));
+}
 
 using Attrs = Values::Attributes;
 
index c341b3e0a5dbae248f3dde57dcae379d22bfbee5..c0d1bed64455a40ee2dc9ab8cacc3c7d87e5bf90 100644 (file)
@@ -29,6 +29,8 @@ class Attributes
 {
 public:
   static bool is_known (const std::string &attribute_path);
+  static bool is_lang_item (const std::string &attribute_path,
+                           const AST::Attribute &attr);
 };
 
 enum CompilerPass