TypeScript Version:
2.7.0 and above.
Search Terms:
strictNullChecks strictPropertyInitialization
Code
class C {
foo: number;
bar = "hello";
baz: boolean;
constructor() {
this.foo = 42;
}
}
Expected behavior:
TS documentation should mention that --strictNullChecks flag is needed for --strictPropertyInitialization one to actually have an effect.
This would properly document the actual code change in this commit :

This was clearly mentionned in the corresponding PR description.
Also @mihailik suggested that a warning could also be emitted. Has this been done?
Actual behavior:
This is mentioned nowhere in the documentation.
Documentation for --strictPropertyInitialization is _Ensure non-undefined class properties are initialized in the constructor._.
To determine if a class property is _non-undefined_, --strictNullChecks flag must be turned on.
Playground Link:
http://www.typescriptlang.org/play/#src=class%20C%20%7B%0D%0A%20%20%20%20foo%3A%20number%3B%0D%0A%20%20%20%20bar%20%3D%20%22hello%22%3B%0D%0A%20%20%20%20baz%3A%20boolean%20%7C%20undefined%3B%0D%0A%0D%0A%20%20%20%20constructor()%20%7B%0D%0A%20%20%20%20%20%20%20%20this.foo%20%3D%2042%3B%0D%0A%20%20%20%20%7D%0D%0A%7D%0D%0A%0D%0Aconst%20foo%3A%20string%20%3D%20%22fdsf%22%3B
Related Issues:
I found no existing issue for updating the documentation about this.
A PR to warn for use of --strictPropertyInitialization with no --strictNullChecks would be welcomed. The fix should be added in 'verifyCompilerOptions'.
Also a PR to update the docs would be welcomed, the handbook is at https://github.com/Microsoft/TypeScript-Handbook
A PR to warn for use of --strictPropertyInitialization with no --strictNullChecks would be welcomed
@mhegazy I'll make PR for that case.
Most helpful comment
Also a PR to update the docs would be welcomed, the handbook is at https://github.com/Microsoft/TypeScript-Handbook