Description
TypeScript Version: 2.0.0-dev.20160707
VSCode Version: 1.3.0
OS Version: Debian GNU/Linux 8.5
This issue is related to #6365 which is fixed in TypeScript 2.0 but for some reason it can still be reproduced in vscode configured to use TypeScript 2.0.
Steps to reproduce:
-
Globally install TypeScript 2.0 with "npm install -g typescript@next"
-
Install vscode 1.3.0
-
Configure vscode to use the globally installed TypeScript 2.0 by setting the typescript.tsdk path in the user settings.
-
Unpack the projects.zip
archive somewhere. -
Run
npm link
inprojects/base
. -
Run
npm link base
inprojects/ui
. -
Run
npm link
inprojects/ui
. -
Run
npm link base
inprojects/application
. -
Run
npm link ui
inprojects/application
. -
Run
tsc
inprojects/application
and notice that it compiles correctly. -
Now open
projects/application
in vscode and open the filesrc/main/Impl.ts
. The following error is displayed:Class 'TestImpl' incorrectly implements interface 'Test'. Types of property 'getPoint' are incompatible. Type '() => Point' is not assignable to type '() => Point'. Type 'Point' is not assignable to type 'Point'. Types have separate declarations of a private property 'x'.
-
Press Ctrl-Shift-B to compile the project with the command line compiler. The error disappears.
-
Edit the file (inserting a whitespace for example) and the error re-appears.
So while the project compiles fine on the command line (Running tsc
directly) it doesn't compile within vscode which uses the exact same compiler.
Here is a screenshot of the error message: