anchor.diff:    member x.MultiLine:bool =
       (x.RegExp.Options &&& RegexOptions.Multiline) = RegexOptions.Multiline
   
  -  new (env, pattern, options, global') = {
  -    inherit CommonObject(env, env.Maps.RegExp, env.Prototypes.RegExp) 
  -    RegExp = new Regex(pattern, options ||| RegexOptions.ECMAScript ||| RegexOptions.Compiled)
  -    Global = global'
  -  }
  +  new (env, pattern, options, global') as this =
  +    {
  +      inherit CommonObject(env, env.Maps.RegExp, env.Prototypes.RegExp)
  +      RegExp = null
  +      Global = global'
  +    }
  +    then
  +    try
  +      this.RegExp <- new Regex(pattern, options ||| RegexOptions.ECMAScript ||| RegexOptions.Compiled)
  +    with
  +      | :? ArgumentException as e -> env.RaiseSyntaxError(e.Message)
   
     new (env, pattern) = 
       RegExpObject(env, pattern, RegexOptions.None, false)
  -    
  +
   (*
   //  
   *)
  
positive.code:   member x.NewArray() = x.NewArray(0u)
    member x.NewArray(size) =
      let array = AO(x, size)
      array.Put("length", double size)
      array :> CO
  
    member x.NewString() = x.NewString(String.Empty)
  
negative.code: and [<AllowNullLiteral>] RegExpObject = 
    inherit CommonObject
  
    val mutable RegExp : Regex
    val Global : bool
  
    member x.IgnoreCase:bool =
  