Thread: RC1 finally wrapped ...

RC1 finally wrapped ...

From
"Marc G. Fournier"
Date:
Its wrap'd and on the main ftp site now, to be propogated as mirrors pull
it ... will announce tomorrow, to give the mirrors a chance to grab, but
if anyone wants to take a quick peek, make sure everything looks okay that
would be cool ... file sizes look about right based on the past betas ...




C++ problems with RC1

From
teg@redhat.com (Trond Eivind Glomsrød)
Date:
The autoconf test for C++ doesn't work with standard-enforcing
compilers....


[teg@halden teg]$ cat foo.C
#include <string>

int main(int argc, char **argv){string foo="xyzzy";return 0;
}
[teg@halden teg]$ c++ foo.C -o foo
foo.C: In function `int main(int, char**)':
foo.C:4: `string' undeclared (first use this function)
foo.C:4: (Each undeclared identifier is reported only once for each function it   appears in.)
foo.C:4: parse error before `=' token
[teg@halden teg]$

The standard mandates that string is accessed in one of the following
ways:

[teg@halden teg]$ cat foo2.C 
#include <string>

using namespace std;

int main(int argc, char **argv){string foo="xyzzy";return 0;
}
[teg@halden teg]$ cat foo3.C
#include <string>

int main(int argc, char **argv){std::string foo="xyzzy";return 0;
}
[teg@halden teg]$ 

Some compilers accept the old way (and namespaces have been available
for quite some time now), others (like upcoming gcc 3.1) don't.
-- 
Trond Eivind Glomsrød
Red Hat, Inc.


Re: C++ problems with RC1

From
Tom Lane
Date:
teg@redhat.com (Trond Eivind Glomsrød) writes:
> The autoconf test for C++ doesn't work with standard-enforcing
> compilers....

Exactly what part of it doesn't work?  AFAICT, the first test is
just to see if #include <string>
succeeds, and if that works then we do not try the section you seem
to be blaming.  So it looks to me like a compiler that conforms
to the C++-standard-of-the-month should work fine: both
HAVE_CXX_STRING_HEADER and HAVE_NAMESPACE_STD should become set.
What are you seeing?
        regards, tom lane


Re: C++ problems with RC1

From
Trond Eivind Glomsrød
Date:
On Thu, 24 Jan 2002, Tom Lane wrote:

> teg@redhat.com (Trond Eivind Glomsrød) writes:
> > The autoconf test for C++ doesn't work with standard-enforcing
> > compilers....
> 
> Exactly what part of it doesn't work?  AFAICT, the first test is
> just to see if 
>     #include <string>
> succeeds, and if that works then we do not try the section you seem
> to be blaming.  So it looks to me like a compiler that conforms
> to the C++-standard-of-the-month should work fine: both
> HAVE_CXX_STRING_HEADER and HAVE_NAMESPACE_STD should become set.
> What are you seeing?

I saw it failing... however, the cause for this failing was the use of 
multiline literals (cc_version). The compilers warns about this being 
deprecated, and autoconf thinks this means the test failed. See the other 
patch I posted yesterday.

-- 
Trond Eivind Glomsrød
Red Hat, Inc.



Re: C++ problems with RC1

From
Tom Lane
Date:
Trond Eivind Glomsrød <teg@redhat.com> writes:
>> What are you seeing?

> I saw it failing... however, the cause for this failing was the use of 
> multiline literals (cc_version). The compilers warns about this being 
> deprecated, and autoconf thinks this means the test failed.

Ah.  So with the "head -1" fix we should be good to go?
        regards, tom lane