/optionstrict

Enforces strict type semantics to restrict implicit type conversions.

/optionstrict[+ | -]
/optionstrict[:custom]

Arguments

  • + | -
    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.

  • custom
    Required. Warn when strict language semantics are not respected.

Remarks

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

Example

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

vbc /optionstrict+ test.vb

See Also

Reference

/optioncompare

/optionexplicit

/optioninfer

/nowarn

/warnaserror (Visual Basic)

Sample Compilation Command Lines (Visual Basic)

Option Strict Statement

Visual Basic Defaults, Projects, Options Dialog Box

Other Resources

Visual Basic Command-Line Compiler