== Why is this an issue? Functions can return values using two different syntaxes. The modern, and correct, way to do it is to use a ``++Return++`` statement. The VB6 way, i.e. old way, is to assign a return value to the function's name . The VB6 syntax is obsolete as it was introduced to simplify migration from VB6 projects. The compiler will create a local variable which is implicitly returned when execution exits the function's scope. ``++Return++`` statement should be used instead as they are easier to read and understand. === Noncompliant code example [source,vbnet] ---- Public Function FunctionName() As Integer FunctionName = 42 ' Noncompliant End Function Public Function FunctionNameFromVariable() As Integer Dim Value As Integer = 42 FunctionNameFromVariable = Value ' Noncompliant End Function ---- === Compliant solution [source,vbnet] ---- Public Function FunctionName() As Integer Return 42 End Function Public Function FunctionNameFromVariable() As Integer Dim Value As Integer = 42 Return Value End Function ---- == Resources * https://docs.microsoft.com/en-us/dotnet/visual-basic/language-reference/statements/function-statement#returning-from-a-function[.Net documentation - Returning from a Function] ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message * Use a 'Return' statement; assigning returned values to function names is obsolete. * Do not make use of the implicit return value. endif::env-github,rspecator-view[]