@@ -62,41 +62,36 @@ private IEnumerable<ParameterCanBeByValInspectionResult> GetResults(List<Declara
62
62
foreach ( var declaration in declarationMembers )
63
63
{
64
64
var declarationParameters =
65
- declarations . Where ( d => d . DeclarationType == DeclarationType . Parameter &&
66
- d . ParentDeclaration == declaration )
65
+ declarations . Where ( d => d . DeclarationType == DeclarationType . Parameter && Equals ( d . ParentDeclaration , declaration ) )
67
66
. OrderBy ( o => o . Selection . StartLine )
68
67
. ThenBy ( t => t . Selection . StartColumn )
69
68
. ToList ( ) ;
70
69
71
- var parametersAreByRef = declarationParameters . Select ( s => true ) . ToList ( ) ;
72
-
73
70
var members = declarationMembers . Any ( a => a . DeclarationType == DeclarationType . Event )
74
71
? declarations . FindHandlersForEvent ( declaration ) . Select ( s => s . Item2 ) . ToList ( )
75
72
: declarations . FindInterfaceImplementationMembers ( declaration ) . ToList ( ) ;
76
73
77
74
foreach ( var member in members )
78
75
{
79
76
var parameters =
80
- declarations . Where ( d => d . DeclarationType == DeclarationType . Parameter &&
81
- d . ParentDeclaration == member )
82
- . OrderBy ( o => o . Selection . StartLine )
83
- . ThenBy ( t => t . Selection . StartColumn )
77
+ declarations . Where ( d => d . DeclarationType == DeclarationType . Parameter && Equals ( d . ParentDeclaration , member ) )
78
+ . OrderBy ( d => d . Selection . StartLine )
79
+ . ThenBy ( d => d . Selection . StartColumn )
84
80
. ToList ( ) ;
85
81
82
+ var parametersAreByRef = parameters . Select ( s => true ) . ToList ( ) ;
83
+
86
84
for ( var i = 0 ; i < parameters . Count ; i ++ )
87
85
{
88
86
parametersAreByRef [ i ] = parametersAreByRef [ i ] && ! IsUsedAsByRefParam ( declarations , parameters [ i ] ) &&
89
87
( ( VBAParser . ArgContext ) parameters [ i ] . Context ) . BYVAL ( ) == null &&
90
88
! parameters [ i ] . References . Any ( reference => reference . IsAssignment ) ;
91
- }
92
- }
93
89
94
- for ( var i = 0 ; i < declarationParameters . Count ; i ++ )
95
- {
96
- if ( parametersAreByRef [ i ] )
97
- {
98
- yield return new ParameterCanBeByValInspectionResult ( this , State , declarationParameters [ i ] ,
99
- declarationParameters [ i ] . Context , declarationParameters [ i ] . QualifiedName ) ;
90
+ if ( parametersAreByRef [ i ] )
91
+ {
92
+ yield return new ParameterCanBeByValInspectionResult ( this , State , declarationParameters [ i ] ,
93
+ declarationParameters [ i ] . Context , declarationParameters [ i ] . QualifiedName ) ;
94
+ }
100
95
}
101
96
}
102
97
}
0 commit comments