July 08, 2011
module main;

import std.ctype;

void main()
{
     auto foo = isspace(' ');
}


gives:
"Warning: As of Phobos 2.054, std.ctype has been scheduled for
deprecation in January 2012. Please use std.ascii instead."

The fail here is that every application using isspace is going to have to be build with -d because there is nothing equivalent in std.ascii :(



On 08.07.2011 00:50, David Simcha wrote:
> I Isolated the other regression that I mentioned this morning.  It's one that I don't think anyone else is likely to run into and I wouldn't be at all annoyed if we just released with it.
>
> http://d.puremagic.com/issues/show_bug.cgi?id=6267
>
> On 7/5/2011 10:31 PM, Walter Bright wrote:
>>
>> http://ftp.digitalmars.com/dmd1beta.zip
>> http://ftp.digitalmars.com/dmd2beta.zip
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>

July 08, 2011
On 2011-07-08 00:27, Stephan Dilly wrote:
> module main;
> 
> import std.ctype;
> 
> void main()
> {
>      auto foo = isspace(' ');
> }

1. It's _scheduled_ for deprecation, not deprecated. So, all it's doing right now is warning you. It'll actually be deprecated in January. _Then_ you will need -d.

2. std.ascii.isWhite is the replacement. It says so in the documentation.

_None_ of the functions in std.ctype have been lost in the move to std.ascii. They've been renamed to be properly camelcased, to better match the naming elsewhere in Phobos, and to just generally improved the names. And more importantly, they've had their return types fixed to be bool instead of int.

- Jonathan M Davis
July 08, 2011
On 2011-07-08 00:25, Stephan Dilly wrote:
> module main;
> 
> import std.ctype;
> 
> void main()
> {
> }
> 
> gives:
> "Warning: As of Phobos 2.054, std.ctype has been scheduled for
> deprecation in January 2012. Please use std.ascii instead."
> 
> 
> There is a file and line number missing.

It's a pragma, not a compiler warning. It doesn't give a file and line number. And if it did give one, all it would give would be the line number in std.ctype. It gets printed if you import std.ctype anywhere. Similar pragmas are used for pretty much every module which is currently either scheduled for deprecation or actually deprecated (and any which doen have such pragmas, should have them).

- Jonathan M Davis
July 08, 2011
I found another problem, that i think that was not present in the last release:

string mutateTheImmutable(immutable string _s)
{
     char[] s = _s.dup;

     foreach(ref c; s)
         c = 'x';

     return s.idup;
}

string doharm(immutable string _name)
{
     return mutateTheImmutable(_name[2..$].idup);
}

enum literal = "CL_INVALID_CONTEXT";
pragma(msg, "literal:" ~ literal);

enum foo = doharm(literal);

pragma(msg, "mutated:" ~ foo);
pragma(msg, "literal:" ~ literal);

void main(){}


dmd messages:
literal:CL_INVALID_CONTEXT
mutated:xxxxxxxxxxxxxxxx
literal:CLxxxxxxxxxxxxxxxx


Is this behaviour by design ??



On 08.07.2011 00:50, David Simcha wrote:
> I Isolated the other regression that I mentioned this morning.  It's one that I don't think anyone else is likely to run into and I wouldn't be at all annoyed if we just released with it.
>
> http://d.puremagic.com/issues/show_bug.cgi?id=6267
>
> On 7/5/2011 10:31 PM, Walter Bright wrote:
>>
>> http://ftp.digitalmars.com/dmd1beta.zip
>> http://ftp.digitalmars.com/dmd2beta.zip
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>

July 08, 2011
On 8 July 2011 10:56, Stephan Dilly <Dilly at funatics.de> wrote:
> I found another problem, that i think that was not present in the last release:

Clearly it's CTFE not respecting .dup in certain circumstances.
But it behaved the same way in 2.053. In 2.052, it prints:
literal:CL_INVALID_CONTEXT
mutated:_INVALID_CONTEXT
literal:CL_INVALID_CONTEXT
because the foreach ref was simply ignored.
So it's not a regression. Instead, one form of wrong code was replaced
with another.
I'll be on holidays for the next two weeks and will not be online, so
I don't have time to fix this anyway.

>
> string mutateTheImmutable(immutable string _s)
> {
> ? ?char[] s = _s.dup;
>
> ? ?foreach(ref c; s)
> ? ? ? ?c = 'x';
>
> ? ?return s.idup;
> }
>
> string doharm(immutable string _name)
> {
> ? ?return mutateTheImmutable(_name[2..$].idup);
> }
>
> enum literal = "CL_INVALID_CONTEXT";
> pragma(msg, "literal:" ~ literal);
>
> enum foo = doharm(literal);
>
> pragma(msg, "mutated:" ~ foo);
> pragma(msg, "literal:" ~ literal);
>
> void main(){}
>
>
> dmd messages:
> literal:CL_INVALID_CONTEXT
> mutated:xxxxxxxxxxxxxxxx
> literal:CLxxxxxxxxxxxxxxxx
>
>
> Is this behaviour by design ??
>
>
>
> On 08.07.2011 00:50, David Simcha wrote:
>>
>> I Isolated the other regression that I mentioned this morning. ?It's one that I don't think anyone else is likely to run into and I wouldn't be at all annoyed if we just released with it.
>>
>> http://d.puremagic.com/issues/show_bug.cgi?id=6267
>>
>> On 7/5/2011 10:31 PM, Walter Bright wrote:
>>>
>>> http://ftp.digitalmars.com/dmd1beta.zip
>>> http://ftp.digitalmars.com/dmd2beta.zip
>>> _______________________________________________
>>> dmd-beta mailing list
>>> dmd-beta at puremagic.com
>>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>>
>>
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
July 08, 2011
ok, too bad


On 08.07.2011 14:56, Don Clugston wrote:
> On 8 July 2011 10:56, Stephan Dilly<Dilly at funatics.de>  wrote:
>> I found another problem, that i think that was not present in the last release:
> Clearly it's CTFE not respecting .dup in certain circumstances.
> But it behaved the same way in 2.053. In 2.052, it prints:
> literal:CL_INVALID_CONTEXT
> mutated:_INVALID_CONTEXT
> literal:CL_INVALID_CONTEXT
> because the foreach ref was simply ignored.
> So it's not a regression. Instead, one form of wrong code was replaced
> with another.
> I'll be on holidays for the next two weeks and will not be online, so
> I don't have time to fix this anyway.
>
>> string mutateTheImmutable(immutable string _s)
>> {
>>     char[] s = _s.dup;
>>
>>     foreach(ref c; s)
>>         c = 'x';
>>
>>     return s.idup;
>> }
>>
>> string doharm(immutable string _name)
>> {
>>     return mutateTheImmutable(_name[2..$].idup);
>> }
>>
>> enum literal = "CL_INVALID_CONTEXT";
>> pragma(msg, "literal:" ~ literal);
>>
>> enum foo = doharm(literal);
>>
>> pragma(msg, "mutated:" ~ foo);
>> pragma(msg, "literal:" ~ literal);
>>
>> void main(){}
>>
>>
>> dmd messages:
>> literal:CL_INVALID_CONTEXT
>> mutated:xxxxxxxxxxxxxxxx
>> literal:CLxxxxxxxxxxxxxxxx
>>
>>
>> Is this behaviour by design ??
>>
>>
>>
>> On 08.07.2011 00:50, David Simcha wrote:
>>> I Isolated the other regression that I mentioned this morning.  It's one that I don't think anyone else is likely to run into and I wouldn't be at all annoyed if we just released with it.
>>>
>>> http://d.puremagic.com/issues/show_bug.cgi?id=6267
>>>
>>> On 7/5/2011 10:31 PM, Walter Bright wrote:
>>>> http://ftp.digitalmars.com/dmd1beta.zip
>>>> http://ftp.digitalmars.com/dmd2beta.zip
>>>> _______________________________________________
>>>> dmd-beta mailing list
>>>> dmd-beta at puremagic.com
>>>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>>>
>>> _______________________________________________
>>> dmd-beta mailing list
>>> dmd-beta at puremagic.com
>>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>>
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>

July 08, 2011
On 8 July 2011 15:23, Stephan Dilly <Dilly at funatics.de> wrote:
> ok, too bad
>
>
> On 08.07.2011 14:56, Don Clugston wrote:
>>
>> On 8 July 2011 10:56, Stephan Dilly<Dilly at funatics.de> ?wrote:
>>>
>>> I found another problem, that i think that was not present in the last release:
[snip]

Although this was also present in 2.053, there are related cases which
are genuine regressions since 2.053.
Turned out to be an easy fix. Pull request 216.

-- And that's it from me.
July 08, 2011
Something is wrong with the RDMD in the beta.

I've packed RDMD from the beta2, and a freshly built one from github: http://dl.dropbox.com/u/9218759/rdmd_bug.zip

Running `dmd2beta_rdmd.exe test.d` and I get no output. Running `github_rdmd.exe test.d` gives me the expected output.
July 08, 2011
Maybe there's some codegen issue with whatever DMD was used to compile dmd2beta_rdmd.exe?

What DMD did you use to compile github_rdmd.exe?

Walter: What DMD was used to compile the RDMD included in 2.054 beta2?

----- Original Message ----- 
From: "Andrej Mitrovic" <andrej.mitrovich at gmail.com>
To: "Discuss the dmd beta releases for D" <dmd-beta at puremagic.com>
Sent: Friday, July 08, 2011 5:12 PM
Subject: Re: [dmd-beta] dmd 1.069 and 2.054 beta


> Something is wrong with the RDMD in the beta.
>
> I've packed RDMD from the beta2, and a freshly built one from github: http://dl.dropbox.com/u/9218759/rdmd_bug.zip
>
> Running `dmd2beta_rdmd.exe test.d` and I get no output.
> Running `github_rdmd.exe test.d` gives me the expected output.
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta

July 08, 2011

On 7/8/2011 2:12 PM, Andrej Mitrovic wrote:
> Something is wrong with the RDMD in the beta.
>
> I've packed RDMD from the beta2, and a freshly built one from github: http://dl.dropbox.com/u/9218759/rdmd_bug.zip
>
> Running `dmd2beta_rdmd.exe test.d` and I get no output. Running `github_rdmd.exe test.d` gives me the expected output.
>

If you run rdmd without options, what do you get?