aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorOm Swaroop Nayak <96killerat96@gmail.com>2025-01-01 09:02:02 -0800
committerArthur Cohen <arthur.cohen@embecosm.com>2025-03-21 12:56:56 +0100
commit7fd30073101a94bcbe29bab6ca45b05ab74542aa (patch)
tree218e6dc9fc5cddf9bfcd6cedcb738d36f91a99b7 /gcc
parent770ca551cf9c591ba195e6c12c8a24948d5b289b (diff)
downloadgcc-7fd30073101a94bcbe29bab6ca45b05ab74542aa.zip
gcc-7fd30073101a94bcbe29bab6ca45b05ab74542aa.tar.gz
gcc-7fd30073101a94bcbe29bab6ca45b05ab74542aa.tar.bz2
gccrs: gcc/rust/ChangeLog:
* 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>
Diffstat (limited to 'gcc')
-rw-r--r--gcc/rust/ast/rust-collect-lang-items.cc7
-rw-r--r--gcc/rust/util/rust-attributes.cc8
-rw-r--r--gcc/rust/util/rust-attributes.h2
3 files changed, 11 insertions, 6 deletions
diff --git a/gcc/rust/ast/rust-collect-lang-items.cc b/gcc/rust/ast/rust-collect-lang-items.cc
index 50d134a..ec6919d 100644
--- a/gcc/rust/ast/rust-collect-lang-items.cc
+++ b/gcc/rust/ast/rust-collect-lang-items.cc
@@ -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 ());
diff --git a/gcc/rust/util/rust-attributes.cc b/gcc/rust/util/rust-attributes.cc
index 9f63234..0234903 100644
--- a/gcc/rust/util/rust-attributes.cc
+++ b/gcc/rust/util/rust-attributes.cc
@@ -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;
diff --git a/gcc/rust/util/rust-attributes.h b/gcc/rust/util/rust-attributes.h
index c928c8e..30f9eef 100644
--- a/gcc/rust/util/rust-attributes.h
+++ b/gcc/rust/util/rust-attributes.h
@@ -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