digitalmars.D.learn - stdout.flush
- Charles Hixson via Digitalmars-d-learn (15/15) May 25 2016 Using:
- Steven Schveighoffer (9/24) May 25 2016 write, writef, etc. are all forwarding functions to stdout.write,
Using: dmd --version DMD64 D Compiler v2.071.0 on debian Linux, and importing: import std.stdio; the line: flush(); causes: nt.d(29): Error: undefined identifier 'flush', did you mean function 'fflush'? This appears solved by doing stdout.flush; (compiles, but I'm still writing the code) but as write, writef, etc. don't require explicitly mentioning stdout, I think that the documentation for flush should mention that the file must be specified. Currently it seems to imply that all files will be flushed.
May 25 2016
On 5/25/16 2:09 PM, Charles Hixson via Digitalmars-d-learn wrote:Using: dmd --version DMD64 D Compiler v2.071.0 on debian Linux, and importing: import std.stdio; the line: flush(); causes: nt.d(29): Error: undefined identifier 'flush', did you mean function 'fflush'? This appears solved by doing stdout.flush; (compiles, but I'm still writing the code) but as write, writef, etc. don't require explicitly mentioning stdout, I think that the documentation for flush should mention that the file must be specified. Currently it seems to imply that all files will be flushed.write, writef, etc. are all forwarding functions to stdout.write, stdout.writef, etc. It's not that it doesn't require mentioning stdout, it's that you have a shortcut defined. Just like C has printf, and fprintf, we have both. But because this isn't C, we don't need to change the name :) flush as a standalone function is not supported at this time. I doubt it will be. -Steve
May 25 2016