PRB: No Error when Non-Array is Passed to Sub That Requires One (177379)



The information in this article applies to:

  • Microsoft Internet Explorer (Programming) 3.01, when used with:
    • the operating system: Microsoft Windows NT
    • the operating system: Microsoft Windows 95
  • Microsoft Internet Explorer (Programming) 3.02, when used with:
    • the operating system: Microsoft Windows NT
    • the operating system: Microsoft Windows 95
  • Microsoft Internet Explorer (Programming) 4.0, when used with:
    • the operating system: Microsoft Windows NT
    • the operating system: Microsoft Windows 95
  • Microsoft Internet Information Server 2.0
  • Microsoft Internet Information Server 3.0
  • Microsoft Internet Information Server 4.0

This article was previously published under Q177379

SYMPTOMS

In VBScript, when a function that is expecting an array as an argument is passed an argument that is not an array, but the function does not do any array-specific processing, no error is displayed and the function works normally.

STATUS

This behavior is by design.

MORE INFORMATION

Steps to Reproduce Behavior

The following code will not produce an error saying that an array was expected, on the statement "ArrayFunction 3."
<HTML>
<HEAD>
<TITLE> Page1 </TITLE>
</HEAD>

<BODY>

<SCRIPT LANGUAGE="VBScript">

call main

sub ArrayFunction(a())
    document.writeln("text")
end sub

sub main()
    ArrayFunction array(1,2)
    ArrayFunction 3  ' this would cause an error in VBA
end sub

</SCRIPT>

</BODY>

</HTML>
				
In VBScript, this just runs, with no error. In Visual Basic for Applications, however, you get a compile error on the line "ArrayFunction 3" saying an array was expected.

Modification Type:MajorLast Reviewed:12/1/2003
Keywords:kbprb KB177379