freepooma-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [pooma-dev] [RFC] Removing workarounds for pre-ISO C++ compilers


From: Jeffrey D. Oldham
Subject: Re: [pooma-dev] [RFC] Removing workarounds for pre-ISO C++ compilers
Date: Tue, 17 Aug 2004 09:02:16 -0700
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040413 Debian/1.6-5

Richard Guenther wrote:

Jeffrey D. Oldham wrote:

Richard Guenther wrote:

Would there be any objections to the removal of the workarounds for pre-ISO C++ compilers like

Pretty much any up-to-date compiler handles these correctly today. Also not all such uses are guarded by the workarounds and I lack a dumb enough compiler to check their correct usage.

Any thoughts?

Richard.



There are still a lot of gcc 2.95 and related compilers in use today. I prefer to leave them but let them rot unless there is a compelling reason to remove them now.


I see. I'd remove them only to unclutter the source and maybe increase maintainability if formally stating we require an ISO conformant compiler. Oh - we do so already:

<quote README>
This version incorporates other minor source code changes to support
compilation using g++ version 3.1 and some improvements to POOMA
Fields.  Compilation using g++ version 2.96 is no longer supported.
g++ version 3.1 is freely available at http://gcc.gnu.org/.  POOMA has
also been tested using KAI C++ 4.0e.
</quote>

Richard.

Good point. Support for gcc 3.4 differs from support for gcc 3.x.y, x < 4, because 3.4 will correctly parse some constructs that gcc 3.x.y does not. What do you prefer we write in the README for a Pooma 2.5 release? That should drive our code changes.

Work on VSIPL++ demonstrates that some templated C++ code that gcc 3.4 easily supports still breaks other compilers. For example, IBM Visual Age 6 (xlc++) can have difficulty parsing with template arguments. Intel C++ 8.0 for IA64, which I believe is the descendant of KAI C++, has trouble with template functions defined outside template classes.

--
Jeffrey D. Oldham
address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]