lambda-params-shadow.js 914 B

1234567891011121314151617181920212223242526272829303132
  1. //-------------------------------------------------------------------------------------------------------
  2. // Copyright (C) Microsoft. All rights reserved.
  3. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. //-------------------------------------------------------------------------------------------------------
  5. var count = 0;
  6. class A {
  7. constructor() { count++; }
  8. increment() { count++; }
  9. }
  10. class B extends A {
  11. constructor() {
  12. super();
  13. ((B) => { super.increment() })();
  14. (A=> { super.increment() })();
  15. let C = async (B) => { B };
  16. let D = async A => { A };
  17. }
  18. }
  19. let b = new B();
  20. class async extends A {
  21. constructor() {
  22. super();
  23. let Q = async A => { A };
  24. }
  25. }
  26. let a = new async();
  27. if (count !== 4) {
  28. WScript.Echo('fail');
  29. }
  30. WScript.Echo('pass');