closure-funcexpr-eval-3.baseline 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. function f(x) {
  2. write(f);
  3. write(x);
  4. (function () {
  5. write(f);
  6. write(x);
  7. eval('f = "inner f";');
  8. eval('x = "inner x";');
  9. write(f);
  10. write(x);
  11. eval('var f = "inner f 2";');
  12. eval('var x = "inner x 2";');
  13. write(f);
  14. write(x);
  15. })();
  16. write(f);
  17. write(x);
  18. }
  19. outer x
  20. function f(x) {
  21. write(f);
  22. write(x);
  23. (function () {
  24. write(f);
  25. write(x);
  26. eval('f = "inner f";');
  27. eval('x = "inner x";');
  28. write(f);
  29. write(x);
  30. eval('var f = "inner f 2";');
  31. eval('var x = "inner x 2";');
  32. write(f);
  33. write(x);
  34. })();
  35. write(f);
  36. write(x);
  37. }
  38. outer x
  39. function f(x) {
  40. write(f);
  41. write(x);
  42. (function () {
  43. write(f);
  44. write(x);
  45. eval('f = "inner f";');
  46. eval('x = "inner x";');
  47. write(f);
  48. write(x);
  49. eval('var f = "inner f 2";');
  50. eval('var x = "inner x 2";');
  51. write(f);
  52. write(x);
  53. })();
  54. write(f);
  55. write(x);
  56. }
  57. inner x
  58. inner f 2
  59. inner x 2
  60. function f(x) {
  61. write(f);
  62. write(x);
  63. (function () {
  64. write(f);
  65. write(x);
  66. eval('f = "inner f";');
  67. eval('x = "inner x";');
  68. write(f);
  69. write(x);
  70. eval('var f = "inner f 2";');
  71. eval('var x = "inner x 2";');
  72. write(f);
  73. write(x);
  74. })();
  75. write(f);
  76. write(x);
  77. }
  78. inner x
  79. vartest = 1
  80. value = 1
  81. hello
  82. whatever