Thread overview
[D-runtime] druntime commit, revision 371
Aug 22, 2010
dsource.org
Aug 22, 2010
Walter Bright
Aug 22, 2010
Sean Kelly
Aug 26, 2010
Shin Fujishiro
Aug 26, 2010
Don Clugston
Aug 27, 2010
Sean Kelly
August 22, 2010
druntime commit, revision 371


user: andrei

msg:
64-bit compatibility work

http://www.dsource.org/projects/druntime/changeset/371

August 22, 2010
What is the purpose of sizediff_t, as opposed to ptrdiff_t, which is already defined? Also, Linux uses ssize_t (for "signed" size_t).

dsource.org wrote:
> druntime commit, revision 371
>
>
> user: andrei
>
> msg:
> 64-bit compatibility work
>
> http://www.dsource.org/projects/druntime/changeset/371
>
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
>
>
> 
August 22, 2010
Are those math routines all really pure?  I thought they might set floating-point state flags.

On Aug 22, 2010, at 5:13 PM, dsource.org wrote:

> druntime commit, revision 371
> 
> 
> user: andrei
> 
> msg:
> 64-bit compatibility work
> 
> http://www.dsource.org/projects/druntime/changeset/371
> 
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime

August 26, 2010
In any case, the folloing functions (plus *f/*l variants) can't be pure:

double  frexp(double value, int* exp);
double  modf(double value, double* iptr);
double  remquo(double x, double y, int* quo);
double  nan(char* tagp);

The pure attributes need to be removed from at least these functions. It breaks building druntime on FreeBSD!

src/core/stdc/math.d(494): Error: function core.stdc.math.frexp
(double value, int* exp) is not callable using argument types
(const (real),const (int*))
...etc...


> Are those math routines all really pure?  I thought they might set floating-point state flags.
> 
> On Aug 22, 2010, at 5:13 PM, dsource.org wrote:
> 
> > druntime commit, revision 371
> > 
> > 
> > user: andrei
> > 
> > msg:
> > 64-bit compatibility work
> > 
> > http://www.dsource.org/projects/druntime/changeset/371
> > 
> > _______________________________________________
> > D-runtime mailing list
> > D-runtime at puremagic.com
> > http://lists.puremagic.com/mailman/listinfo/d-runtime
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
August 26, 2010
On 23 August 2010 00:38, Sean Kelly <sean at invisibleduck.org> wrote:
> Are those math routines all really pure? ?I thought they might set floating-point state flags.

No, they're not pure. Most C math functions are allowed to set the
global variable 'errno'.
I think it's better to assume that NONE are pure.

>
> On Aug 22, 2010, at 5:13 PM, dsource.org wrote:
>
>> druntime commit, revision 371
>>
>>
>> user: andrei
>>
>> msg:
>> 64-bit compatibility work
>>
>> http://www.dsource.org/projects/druntime/changeset/371
>>
>> _______________________________________________
>> D-runtime mailing list
>> D-runtime at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
>
August 27, 2010
Okay that's what I thought.  I'll revert this today.

On Aug 25, 2010, at 11:53 PM, Don Clugston wrote:

> On 23 August 2010 00:38, Sean Kelly <sean at invisibleduck.org> wrote:
>> Are those math routines all really pure?  I thought they might set floating-point state flags.
> 
> No, they're not pure. Most C math functions are allowed to set the
> global variable 'errno'.
> I think it's better to assume that NONE are pure.
> 
>> 
>> On Aug 22, 2010, at 5:13 PM, dsource.org wrote:
>> 
>>> druntime commit, revision 371
>>> 
>>> 
>>> user: andrei
>>> 
>>> msg:
>>> 64-bit compatibility work
>>> 
>>> http://www.dsource.org/projects/druntime/changeset/371
>>> 
>>> _______________________________________________
>>> D-runtime mailing list
>>> D-runtime at puremagic.com
>>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>> 
>> _______________________________________________
>> D-runtime mailing list
>> D-runtime at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>> 
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime