| ; | |
| // all unused | |
| var x; | |
| var y = 1; | |
| var z = fleefl(); | |
| var xx, yy = 1, zz = fleefl(); // but zz must remain due to the side effects in the value | |
| function f(x, y, z) { | |
| // shadow the x,y,z | |
| x = y; | |
| y = z; | |
| } | |
| // exported | |
| function g(a) { | |
| return a+1; | |
| } | |
| Module['g'] = g; | |
| // used | |
| function h(a) { | |
| var t; // unused | |
| return a+1; | |
| } | |
| print(h(123)); | |
| // inner workings | |
| (function() { | |
| var x; | |
| var y = 1; | |
| var z = fleefl(); | |
| var xx, yy = 1, zz = fleefl(); | |
| function f(x, y, z) { | |
| // shadow the x,y,z | |
| x = y; | |
| y = z; | |
| } | |
| // exported | |
| function g(a) { | |
| return a+1; | |
| } | |
| Module['g'] = g; | |
| // used | |
| function hh(a) { | |
| var t; // unused | |
| return a+1; | |
| } | |
| print(hh(123)); | |
| })(); | |
| function glue() { | |
| function lookup() { // 2 passes needed for this one | |
| throw 1; | |
| } | |
| function removable() { // first remove this | |
| lookup(); | |
| } | |
| } | |
| glue(); | |
| var buffer = new ArrayBuffer(1024); | |
| // unnecessary leftovers that seem to have side effects | |
| "undefined" !== typeof TextDecoder && new TextDecoder("utf8"); | |
| new TextDecoder("utf8"); | |
| new Int8Array(buffer); | |
| new Uint8Array(buffer); | |
| new Int16Array(buffer); | |
| new Uint16Array(buffer); | |
| new Int32Array(buffer); | |
| new Uint32Array(buffer); | |
| new Float32Array(buffer); | |
| new Float64Array(buffer); | |
| // for comparison, real side effects | |
| new SomethingUnknownWithSideEffects("utf8"); | |
| new TextDecoder(Unknown()); | |