argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(3,10): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(9,10): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(15,15): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(21,15): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(33,16): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(40,7): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(42,16): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(66,6): error TS2585: 'Symbol' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(75,7): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(77,9): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(96,26): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts(102,15): error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.


==== argumentsUsedInClassFieldInitializerOrStaticInitializationBlock.ts (12 errors) ====
    function A() {
      return class T {
         a = arguments
             ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function A1() {
      return new class T {
         a = arguments
             ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function B() {
      return class T {
         a = { b: arguments }
                  ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function B1() {
      return new class T {
         a = { b: arguments }
                  ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function C() {
      return class T {
         a = function () { arguments }
      }
    }
    
    function D() {
      return class T {
         a = () => arguments  // should error
                   ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function D1() {
      return class T {
        a = () => {
          arguments;    // should error
          ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
          const b = () => {
            return arguments;     // should error
                   ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
          }
    
          function f() {
            return arguments;      // ok
          }
        }
     }
    }
    
    function D2() {
      return class {
        constructor() {
          arguments;  // ok
        }
        get foo() {
          return arguments;  // ok
        }
        set foo(foo: any) {
          arguments;  // ok
        }
        bar() {
          arguments;  // ok
        }
        [Symbol.iterator]() {
         ~~~~~~
!!! error TS2585: 'Symbol' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later.
          arguments;  // ok
        }
      }
    }
    
    function D3() {
      return class T {
        static {
          arguments;  // should error
          ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
          while(1) {
            arguments // should error
            ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
          }
        }
      }
    }
    
    function D4() {
      return class T {
        static {
          function f() {
            arguments;  // ok
          }
        }
      }
    }
    
    
    function D5() {
      return class T {
         a = (() => { return arguments; })()  // should error
                             ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function D6() {
      return class T {
         a = (x = arguments) => {}    // should error
                  ~~~~~~~~~
!!! error TS2815: 'arguments' cannot be referenced in property initializers or class static initialization blocks.
      }
    }
    
    function D7() {
      return class T {
         a(x = arguments){  // ok
    
         }
      }
    }
    