gccrs icon indicating copy to clipboard operation
gccrs copied to clipboard

hir: Remove EnumItemDiscriminant from HIR

Open varun-r-mallya opened this issue 9 months ago • 5 comments

gcc/rust/ChangeLog:

	* ast/rust-ast-collector.cc (TokenCollector::visit): Removed.
	* backend/rust-compile-item.h (CompileItem::visit): Remove EnumItemDiscriminant case.
	* backend/rust-compile-stmt.h (CompileStmt::visit): Remove EnumItemDiscriminant case.
	* checks/errors/borrowck/rust-bir-builder-expr-stmt.h (BIRBuilderExprStmt::visit):
	Remove EnumItemDiscriminant case.
	* checks/errors/borrowck/rust-bir-builder-struct.h (BIRBuilderStruct::visit): Remove
	EnumItemDiscriminant case.
	* checks/errors/borrowck/rust-function-collector.h (FunctionCollector::visit): Remove
	EnumItemDiscriminant case.
	* checks/errors/privacy/rust-privacy-reporter.cc (PrivacyReporter::visit): Remove
	EnumItemDiscriminant implementation.
	* checks/errors/privacy/rust-privacy-reporter.h (PrivacyReporter::visit): Remove
	EnumItemDiscriminant declaration.
	* checks/errors/rust-const-checker.cc (ConstChecker::visit): Remove EnumItemDiscriminant
	implementation.
	* checks/errors/rust-const-checker.h (ConstChecker::visit): Remove EnumItemDiscriminant
	declaration.
	* checks/errors/rust-hir-pattern-analysis.cc (PatternChecker::visit): Remove
	EnumItemDiscriminant implementation.
	* checks/errors/rust-hir-pattern-analysis.h (PatternChecker::visit): Remove
	EnumItemDiscriminant declaration.
	* checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit): Remove
	EnumItemDiscriminant implementation.
	* checks/errors/rust-unsafe-checker.h (UnsafeChecker::visit): Remove
	EnumItemDiscriminant declaration.
	* hir/rust-hir-dump.cc (Dump::visit): Remove EnumItemDiscriminant implementation.
	* hir/rust-hir-dump.h (Dump::visit): Remove EnumItemDiscriminant declaration.
	* hir/tree/rust-hir-full-decls.h: Remove EnumItemDiscriminant forward declaration.
	* hir/tree/rust-hir-item.cc (EnumItemDiscriminant::as_string): Remove implementation.
	(EnumItemDiscriminant::accept_vis): Remove implementation.
	* hir/tree/rust-hir-item.h: Remove EnumItemDiscriminant class definition.
	* hir/tree/rust-hir-visitor.h (HIRFullVisitor::visit): Remove EnumItemDiscriminant
	declaration.
	(HIRStmtVisitor::visit): Remove EnumItemDiscriminant declaration.
	* hir/tree/rust-hir.cc (EnumItemDiscriminant::as_string): Remove implementation.
	(EnumItemDiscriminant::accept_vis): Remove implementation.
	* typecheck/rust-hir-type-check-enumitem.cc (TypeCheckEnumItem::Resolve): Remove
	EnumItemDiscriminant case.
	(TypeCheckEnumItem::visit): Remove EnumItemDiscriminant implementation.
	* typecheck/rust-hir-type-check-enumitem.h (TypeCheckEnumItem::visit): Remove
	EnumItemDiscriminant declaration.
	* typecheck/rust-hir-type-check-stmt.h (TypeCheckStmt::visit): Remove EnumItemDiscriminant case.

Addresses #3340

Thank you for making Rust GCC better!

If your PR fixes an issue, you can add "Fixes #issue_number" into this PR description and the git commit message. This way the issue will be automatically closed when your PR is merged. If your change addresses an issue but does not fully fix it please mark it as "Addresses #issue_number" in the git commit message.

Here is a checklist to help you with your PR.

  • [ ] GCC development requires copyright assignment or the Developer's Certificate of Origin sign-off, see https://gcc.gnu.org/contribute.html or https://gcc.gnu.org/dco.html
  • [x] Read contributing guidlines
  • [ ] make check-rust passes locally
  • [x] Run clang-format
  • [ ] Added any relevant test cases to gcc/testsuite/rust/

Note that you can skip the above if you are just opening a WIP PR in order to get feedback.

*Please write a comment explaining your change. This is the message that will be part of the merge commit.

varun-r-mallya avatar Apr 05 '25 11:04 varun-r-mallya

make check-rust does not run on my machine and gives an OOM error. I will be developing on my machine and testing here due to this

varun-r-mallya avatar Apr 05 '25 12:04 varun-r-mallya

How much ram do you have?

powerboat9 avatar Apr 05 '25 13:04 powerboat9

How much ram do you have?

I have 32 GBs of RAM currently. I think this is an issue particularly due a memory leak I am making in the code. For my other PR, I ran make check-rust multiple times with no issues.

varun-r-mallya avatar Apr 05 '25 13:04 varun-r-mallya

Are you sure this PR is the one you're OOMing on?

Edit: is the code causing the memory leak pushed?

powerboat9 avatar Apr 05 '25 21:04 powerboat9

https://github.com/Rust-GCC/gccrs/pull/3698#issuecomment-2781092615 Yeah, I just ran the test locally, it did cause an OOM. Fedora shut it down.

varun-r-mallya avatar Apr 05 '25 22:04 varun-r-mallya