Identifies Functions or Properties referenced by the TruePart(second argument) or FalsePart(third argument) of the IIf built-in function.
New This feature is currently only available in pre-release builds (or the xmldoc asset doesn’t yet exist on
Inspection type: CodeQualityIssues
All arguments of any function/procedure call are always evaluated before the function is invoked so that their respective values can be passed as parameters. Even so, the IIf Function's behavior is sometimes mis-interpreted to expect that ONLY the 'TruePart' or ONLY the 'FalsePart' expression will be evaluated based on the result of the first argument expression. Consequently, the IIf Function can be a source of unanticipated side-effects and errors if the user does not account for the fact that both the TruePart and FalsePart arguments are always evaluated
The following quick-fixes are available for this inspection:
Each example is a self-contained MCVE showing the feature in a single specific scenario.
Module1by default, these are general-purpose standard procedural modules.
Class1by default, these modules define the default interface for an object of that type.
VB_PredeclaredIdattribute set to
True(with or without a
@Interfaceannotation) whose default interface is not a class type intended to be instantiated.
The following code should trigger this inspection:
The content of this page was generated from xml/comments in the source code compiled into
Edit this page