This documentation is archived and is not being maintained.


Enforces strict type semantics to restrict implicit type conversions.

/optionstrict[+ | -]

+ | -

Optional. The /optionstrict+ option restricts implicit type conversion. The default for this option is /optionstrict-. The /optionstrict+ option is the same as /optionstrict. You can use both for permissive type semantics.


Required. Warn when strict language semantics are not respected.

When /optionstrict+ is in effect, only widening type conversions can be made implicitly. Implicit narrowing type conversions, such as assigning a Decimal type object to an integer type object, are reported as errors.

To generate warnings for implicit narrowing type conversions, use /optionstrict:custom. Use /nowarn:numberlist to ignore particular warnings and /warnaserror:numberlist to treat particular warnings as errors.

To set /optionstrict in the Visual Studio IDE

  1. Have a project selected in Solution Explorer. On the Project menu, click Properties. For more information, see Introduction to the Project Designer.

  2. Click the Compile tab.

  3. Modify the value in the Option Strict box.

To set /optionstrict programmatically

The following code compiles Test.vb using strict type semantics.

vbc /optionstrict+ test.vb