Beef icon indicating copy to clipboard operation
Beef copied to clipboard

Assert failed "owningModule->mOnDemandMethodCount == 0"

Open disarray2077 opened this issue 3 years ago • 0 comments

The code below causes the assert failure mentioned in the issue title when compiled using the IDE debug build.

namespace System.Collections
{
	public interface IVariantEnumerable
	{
		public VariantEnumeratorWrapper GetVariantEnumerator();
	}

	public struct VariantEnumeratorWrapper : IEnumerator<Variant>, IDisposable
	{
		IEnumerator<Variant> mEnumerator;

		public this(IEnumerator<Variant> enumerator)
		{
			mEnumerator = enumerator;
		}

		public void Dispose()
		{
			delete mEnumerator;
		}

		public Result<Variant> GetNext()
		{
			return mEnumerator.GetNext();
		}
	}

	public extension List<T> : IVariantEnumerable
	{
		public VariantEnumeratorWrapper GetVariantEnumerator()
		{
			return .(new box VariantEnumerator());
		}

		public struct VariantEnumerator : IEnumerator<Variant>
		{
			public Result<Variant> GetNext() mut
			{
				Runtime.NotImplemented();
			}
		}
	}
}

Tested with https://github.com/beefytech/Beef/commit/aaa08e9a4e9d217b58ea9f5c5fd81f1053d60a10

disarray2077 avatar Aug 19 '22 16:08 disarray2077