File tree Expand file tree Collapse file tree 3 files changed +10
-3
lines changed Expand file tree Collapse file tree 3 files changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -251,12 +251,12 @@ public void SetupPasses(ILibrary library)
251
251
252
252
if ( Options . IsCSharpGenerator )
253
253
{
254
- TranslationUnitPasses . AddPass ( new GenerateAbstractImplementationsPass ( ) ) ;
255
254
if ( Options . GenerateDefaultValuesForArguments )
256
255
{
257
256
TranslationUnitPasses . AddPass ( new FixDefaultParamValuesOfOverridesPass ( ) ) ;
258
257
TranslationUnitPasses . AddPass ( new HandleDefaultParamValuesPass ( ) ) ;
259
258
}
259
+ TranslationUnitPasses . AddPass ( new GenerateAbstractImplementationsPass ( ) ) ;
260
260
TranslationUnitPasses . AddPass ( new MultipleInheritancePass ( ) ) ;
261
261
}
262
262
TranslationUnitPasses . AddPass ( new DelegatesPass ( ) ) ;
Original file line number Diff line number Diff line change @@ -64,7 +64,8 @@ private static Class AddInternalImplementation(Class @class)
64
64
Namespace = internalImpl ,
65
65
OriginalFunction = abstractMethod ,
66
66
IsPure = false ,
67
- SynthKind = FunctionSynthKind . AbstractImplCall
67
+ SynthKind = abstractMethod . SynthKind == FunctionSynthKind . DefaultValueOverload ?
68
+ FunctionSynthKind . DefaultValueOverload : FunctionSynthKind . AbstractImplCall
68
69
} ;
69
70
impl . OverriddenMethods . Clear ( ) ;
70
71
impl . OverriddenMethods . Add ( abstractMethod ) ;
@@ -120,7 +121,7 @@ private static IEnumerable<Method> GetRelevantAbstractMethods(Class @class)
120
121
}
121
122
else
122
123
{
123
- abstractMethods . RemoveAt ( i ) ;
124
+ abstractMethods . RemoveAt ( i ) ;
124
125
}
125
126
}
126
127
}
Original file line number Diff line number Diff line change @@ -444,6 +444,12 @@ class DLL_API MethodsWithDefaultValues : public Quux
444
444
Foo m_foo;
445
445
};
446
446
447
+ class DLL_API HasPureVirtualWithDefaultArg
448
+ {
449
+ public:
450
+ virtual void pureVirtualWithDefaultArg (Foo* foo = nullptr ) = 0;
451
+ };
452
+
447
453
class DLL_API HasOverridesWithChangedAccessBase
448
454
{
449
455
public:
You can’t perform that action at this time.
0 commit comments