Enables the support for conditional expressions as method parameters.

For example:

       procedure division.
           declare x = 1 < 2
           invoke type System.Diagnostics.Debug::Assert(1 < 2)
Important: This Compiler directive was introduced in Visual COBOL 6.0 and can have an effect on your existing applications created with earlier versions of the product. See the Comments section below.




IDE equivalent: None


Applications that use the old COBOL syntax for specifying named parameters to custom-attributes will not compile with the ILCONDITIONPARAM specified. This can result in any older applications failing to compile in the current version of the product.

You can work around this issue in one of the following ways:

  • Set NOILCONDITIONPARAM in order to disable this behavior and retain compatibility with the old syntax for specifying named parameters to custom attributes - such as:
               custom-attribute is type WebServiceBindingAttribute("Name"="ShakespeareSoap", 
  • Alternatively, recode the above example using attribute instead of custom-attribute:
               attribute WebServiceBinding(property Name = "ShakespeareSoap", 
    property Namespace ="")