-
Notifications
You must be signed in to change notification settings - Fork 316
Open
Labels
code-path-analysisInvolves simulating execution paths / interpreting the user code ..to an extent.Involves simulating execution paths / interpreting the user code ..to an extent.enhancementFeature requests, or enhancements to existing features. Ideas. Anything within the project's scope.Feature requests, or enhancements to existing features. Ideas. Anything within the project's scope.feature-inspectionsretriage-v3Issue is deferred until v3 is completed and may be entirely solved by the paradigm shiftIssue is deferred until v3 is completed and may be entirely solved by the paradigm shift
Description
Given a class that is declared as:
Public Sub MyPublicMethod()
Debug.Print Now(), "Public"
End Sub
Friend Sub MyFriendMethod()
Debug.Print Now(), "Friend"
End SubVBA will allow the Friend members to be called, but only if the instance variable is early bound.
Sub test()
Dim f As Foo
Set f = New Foo
f.MyPublicMethod
f.MyFriendMethod
With New Foo
.MyPublicMethod
.MyFriendMethod
End With
Dim v As Variant
Set v = New Foo
v.MyPublicMethod
v.MyFriendMethod 'Runtime error 438 - Object doesn't support this property or method
Dim o As Variant
Set o = New Foo
o.MyPublicMethod
o.MyFriendMethod 'Runtime error 438 - Object doesn't support this property or method
End SubMetadata
Metadata
Assignees
Labels
code-path-analysisInvolves simulating execution paths / interpreting the user code ..to an extent.Involves simulating execution paths / interpreting the user code ..to an extent.enhancementFeature requests, or enhancements to existing features. Ideas. Anything within the project's scope.Feature requests, or enhancements to existing features. Ideas. Anything within the project's scope.feature-inspectionsretriage-v3Issue is deferred until v3 is completed and may be entirely solved by the paradigm shiftIssue is deferred until v3 is completed and may be entirely solved by the paradigm shift