Re: Why does hello world not compile in safe?

2014-11-29 Thread Jonathan M Davis via Digitalmars-d-learn
On Saturday, November 29, 2014 07:24:55 Freddy via Digitalmars-d-learn wrote:
 
 import std.stdio;
 @safe:
 void main()
 {
   writeln(Edit source/app.d to start your project.);
 }

 
 source/app.d(5): Error: safe function 'D main' cannot call system
 function 'std.stdio.writeln!(string).writeln'

Well, as the error message says, writeln isn't @safe. It's @system. Now, in
this case, writeln really should be inferred as @safe, but it looks like
whatever work needs to be done to make it so that writeln is treated as
@safe when it can be hasn't been done yet (whether it can be or not depends
on what's passed to it, so implementing that properly could be rather
complicated, but mainly, the issue is that someone needs to take the time to
do it).

- Jonathan M Davis



Why does hello world not compile in safe?

2014-11-28 Thread Freddy via Digitalmars-d-learn


import std.stdio;
@safe:
void main()
{
writeln(Edit source/app.d to start your project.);
}


source/app.d(5): Error: safe function 'D main' cannot call system
function 'std.stdio.writeln!(string).writeln'


Re: Why does hello world not compile in safe?

2014-11-28 Thread ketmar via Digitalmars-d-learn
'cause `writeln`() is not @safe, as you can read in the following
compiler message:

 source/app.d(5): Error: safe function 'D main' cannot call system
 function 'std.stdio.writeln!(string).writeln'


signature.asc
Description: PGP signature