mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 19:48:20 +02:00
Improved namespace search in emitted members in types with extensions
This commit is contained in:
parent
15fd1b5f3f
commit
7406780f57
2 changed files with 9 additions and 4 deletions
|
@ -9915,7 +9915,7 @@ BfTypeDef* BfModule::GetActiveTypeDef(BfTypeInstance* typeInstanceOverride, bool
|
|||
else if ((mCurMethodInstance != NULL) && (mCurMethodInstance->mMethodDef->mDeclaringType != NULL))
|
||||
{
|
||||
auto declTypeDef = mCurMethodInstance->mMethodDef->mDeclaringType;
|
||||
useTypeDef = declTypeDef->GetDefinition();
|
||||
useTypeDef = declTypeDef->GetDefinition(true);
|
||||
if ((declTypeDef->IsEmitted()) && (useTypeDef->mIsCombinedPartial))
|
||||
{
|
||||
// Always consider methods to belong to the primary type declaration
|
||||
|
@ -9925,10 +9925,11 @@ BfTypeDef* BfModule::GetActiveTypeDef(BfTypeInstance* typeInstanceOverride, bool
|
|||
else if (mContext->mCurTypeState != NULL)
|
||||
{
|
||||
if ((mContext->mCurTypeState->mCurFieldDef != NULL) && (mContext->mCurTypeState->mCurFieldDef->mDeclaringType != NULL))
|
||||
useTypeDef = mContext->mCurTypeState->mCurFieldDef->mDeclaringType->GetDefinition();
|
||||
useTypeDef = mContext->mCurTypeState->mCurFieldDef->mDeclaringType->GetDefinition(true);
|
||||
else if (mContext->mCurTypeState->mCurTypeDef != NULL)
|
||||
useTypeDef = mContext->mCurTypeState->mCurTypeDef->GetDefinition();
|
||||
useTypeDef = mContext->mCurTypeState->mCurTypeDef->GetDefinition(true);
|
||||
}
|
||||
|
||||
return useTypeDef;
|
||||
}
|
||||
|
||||
|
|
|
@ -1205,10 +1205,14 @@ public:
|
|||
|
||||
bool IsEmitted() { return mEmitParent != NULL; }
|
||||
|
||||
BfTypeDef* GetDefinition()
|
||||
BfTypeDef* GetDefinition(bool getEmitRoot = false)
|
||||
{
|
||||
if (mEmitParent != NULL)
|
||||
{
|
||||
if ((getEmitRoot) && (mEmitParent->mIsCombinedPartial))
|
||||
return mEmitParent->mPartials[0];
|
||||
return mEmitParent;
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue