[Mlir-commits] [llvm] [mlir] [mlir][IR] Add SymbolUserTypeInterface (PR #198435)

Jared Hoberock llvmlistbot at llvm.org
Mon Aug 17 15:56:44 PDT 2026


jaredhoberock wrote:

I can't say why this PR was accepted. I noticed the existence of `SymbolUserAttrInterface` and thought `SymbolUserTypeInterface` also made sense reasoning that attributes and types have roughly the same status as you observed. This interface replaced a hacky ad hoc and out-of-band verification system in my own work.

I appreciate the desire to keep the type system pure. But sometimes types really want to refer to declarations. See the awkwardness of `!llvm.struct`, for example.

There are real performance implications (#212160) for verifiers, but I think they are surmountable. See #212354 for a proof of concept. If you see a better way of dealing with it, please let me know.

https://github.com/llvm/llvm-project/pull/198435


More information about the Mlir-commits mailing list