]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: derive(Hash): Use new Builder API
authorArthur Cohen <arthur.cohen@embecosm.com>
Tue, 22 Apr 2025 18:02:56 +0000 (20:02 +0200)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 5 Aug 2025 14:36:47 +0000 (16:36 +0200)
gcc/rust/ChangeLog:

* expand/rust-derive-hash.cc (DeriveHash::visit_enum): Use new APIs.

gcc/rust/expand/rust-derive-hash.cc

index 0c9b0f7b1057fbebdce92b10b626439e25c39522..94aede2fe030a81923a318e43d46416e7e0451e2 100644 (file)
@@ -231,14 +231,7 @@ DeriveHash::visit_enum (Enum &item)
   auto cases = std::vector<MatchCase> ();
   auto type_name = item.get_identifier ().as_string ();
 
-  auto intrinsic = ptrify (
-    builder.path_in_expression ({"core", "intrinsics", "discriminant_value"},
-                               true));
-
-  auto let_discr
-    = builder.let (builder.identifier_pattern (DeriveHash::discr), nullptr,
-                  builder.call (std::move (intrinsic),
-                                builder.identifier ("self")));
+  auto let_discr = builder.discriminant_value (DeriveHash::discr);
 
   auto discr_hash = builder.statementify (
     hash_call (builder.ref (builder.identifier (DeriveHash::discr))));