$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2003-02-15 12:23:12
On Sat, 15 Feb 2003 12:00:36 -0000, "John Maddock"
<jm_at_[hidden]> wrote:
>> Can't we detect
>> whether the compiler is supporting "long long" and only enable the
>> long long code under those circumstances? In fact, /don't/ we do
>> that?
>>
>> If this is just about inconvenient warnings, it seems to me that
>> telling people "disable long long support or disable the warning" is a
>> perfectly sensible approach.
>>
>> What am I missing?
>
>I agree completely: the issue is that older EDG compilers (prior to 3.0.0)
>don't signal whether they're in strict mode or not
Well, it's unfair to offload it on the compilers though. They aren't
certainly obliged to tell you that a non standard type is not
available. But I'm getting tired of all this discussion, I'm just
replying for the equity's sake. Just to set records straight: the
problem was not compilers; it's just that one should IMHO be able to
compile, let's say, boost::is_integral in strict mode, unless she does
use is_integral<long long>. If I just use is_integral<int>, why should
I get errors?
As you know (see
http://listarchives.boost.org/MailArchives/boost/msg29582.php
) __NO_LONG_LONG is just a 3.0 addition. There's a whole world of EDG
front ends that don't have it, and there's a whole world of EDG users
who want to compile in strict mode. BTW, Dave asked "can't we detect
whether the compiler is supporting long long?". Can we?
Genny.