aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/backend
diff options
context:
space:
mode:
authorArthur Cohen <arthur.cohen@embecosm.com>2024-02-20 15:45:35 +0100
committerCohenArthur <arthur.cohen@embecosm.com>2024-02-29 15:53:03 +0000
commit8e3c34aa04229b0364d9834fc682ca1707ed9a01 (patch)
tree925ff3d5e561f487900e7f3f2c014d357acd51dd /gcc/rust/backend
parent7b3fa7ac97ed5c562ce9c0cbde24f26c14d678ce (diff)
downloadgcc-8e3c34aa04229b0364d9834fc682ca1707ed9a01.zip
gcc-8e3c34aa04229b0364d9834fc682ca1707ed9a01.tar.gz
gcc-8e3c34aa04229b0364d9834fc682ca1707ed9a01.tar.bz2
hir: Add ExternalTypeItem node
gcc/rust/ChangeLog: * hir/tree/rust-hir-item.h (class ExternalTypeItem): New class. * hir/tree/rust-hir.cc (ExternalTypeItem::as_string): Likewise. * backend/rust-compile-extern.h: Add base for handling HIR::ExternalTypeItem node. * checks/errors/borrowck/rust-bir-builder-struct.h: Likewise. * checks/errors/borrowck/rust-function-collector.h: Likewise. * checks/errors/rust-const-checker.cc (ConstChecker::visit): Likewise. * checks/errors/rust-const-checker.h: Likewise. * checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit): Likewise. * checks/errors/rust-unsafe-checker.h: Likewise. * hir/rust-ast-lower-extern.h: Likewise. * hir/rust-hir-dump.cc (Dump::visit): Likewise. * hir/rust-hir-dump.h: Likewise. * hir/tree/rust-hir-full-decls.h (class ExternalTypeItem): Likewise. * hir/tree/rust-hir-visitor.h: Likewise. (ExternalTypeItem::accept_vis): Likewise. * typecheck/rust-hir-type-check-implitem.cc (TypeCheckTopLevelExternItem::visit): Likewise. * typecheck/rust-hir-type-check-implitem.h: Likewise.
Diffstat (limited to 'gcc/rust/backend')
-rw-r--r--gcc/rust/backend/rust-compile-extern.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/rust/backend/rust-compile-extern.h b/gcc/rust/backend/rust-compile-extern.h
index 778553e..b17ac95 100644
--- a/gcc/rust/backend/rust-compile-extern.h
+++ b/gcc/rust/backend/rust-compile-extern.h
@@ -22,6 +22,8 @@
#include "rust-compile-base.h"
#include "rust-compile-intrinsic.h"
#include "rust-compile-type.h"
+#include "rust-diagnostics.h"
+#include "rust-hir-full-decls.h"
namespace Rust {
namespace Compile {
@@ -152,6 +154,11 @@ public:
reference = address_expression (fndecl, ref_locus);
}
+ void visit (HIR::ExternalTypeItem &type) override
+ {
+ rust_sorry_at (type.get_locus (), "extern types are not supported yet");
+ }
+
private:
CompileExternItem (Context *ctx, TyTy::BaseType *concrete,
location_t ref_locus)