==== tests/cases/compiler/implicitAnyCastedValue.ts (9 errors) ==== var x = function () { return 0; // this should not be an error } function foo() { return "hello world"; // this should not be an error } class C { bar = null; // this should be an error ~~~~~~~~~~~ !!! Member 'bar' implicitly has an 'any' type. foo = undefined; // this should be an error ~~~~~~~~~~~~~~~~ !!! Member 'foo' implicitly has an 'any' type. public get tempVar() { ~~~~~~~ !!! Accessors are only available when targeting ECMAScript 5 and higher. return 0; // this should not be an error } public returnBarWithCase() { // this should not be an error return this.bar; } public returnFooWithCase() { return this.foo; // this should not be an error } } class C1 { getValue = null; // this should be an error ~~~~~~~~~~~~~~~~ !!! Member 'getValue' implicitly has an 'any' type. public get castedGet() { ~~~~~~~~~ !!! Accessors are only available when targeting ECMAScript 5 and higher. return this.getValue; // this should not be an error } public get notCastedGet() { ~~~~~~~~~~~~ !!! Accessors are only available when targeting ECMAScript 5 and higher. return this.getValue; // this should not be an error } } function castedNull() { return null; // this should not be an error } function notCastedNull() { ~~~~~~~~~~~~~~~~~~~~~~~~~~ return null; // this should be an error ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ } ~ !!! 'notCastedNull', which lacks return-type annotation, implicitly has an 'any' return type. function returnTypeBar(): any { return null; // this should not be an error } function undefinedBar() { return undefined; // this should not be an error } function multipleRets1(x) { // this should not be an error ~ !!! Parameter 'x' implicitly has an 'any' type. if (x) { return 0; } else { return null; } } function multipleRets2(x) { // this should not be an error ~ !!! Parameter 'x' implicitly has an 'any' type. if (x) { return null; } else if (x == 1) { return 0; } else { return undefined; } } // this should not be an error var bar1 = null; var bar2 = undefined; var bar3 = 0; var array = [null, undefined];