From a9e7ca8ef1aa706441c75b24382d3577a19e3576 Mon Sep 17 00:00:00 2001 From: bangerth Date: Fri, 22 Sep 2006 16:16:09 +0000 Subject: [PATCH] Mention pgi 6.2. Remove notes on old versions git-svn-id: https://svn.dealii.org/trunk@13952 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/doc/platforms/pgcc.html | 115 -------------------------------- deal.II/doc/readme.html | 9 ++- 2 files changed, 4 insertions(+), 120 deletions(-) delete mode 100644 deal.II/doc/platforms/pgcc.html diff --git a/deal.II/doc/platforms/pgcc.html b/deal.II/doc/platforms/pgcc.html deleted file mode 100644 index 6684be75e7..0000000000 --- a/deal.II/doc/platforms/pgcc.html +++ /dev/null @@ -1,115 +0,0 @@ - - - - - The deal.II Readme -- Installation Instructions - - - - - - - -

Installation instructions for the Portland Group pgcc compiler

- -

- This compiler is not supported yet, or maybe we should say this - differently: this compiler does not support C++ enough to allow - compilation of the library. The first obstacle is that as of - version 3.3-2, the compiler does not come with C++ style headers - <cmath&rt;, <cstdlib&rt;, etc. If - such a file is placed into the respective include directory, - containing in include statement for the respective C style header - (no "c" in front, but a ".h" at the end), then at least the - preprocessor works, but we are stuck with uses of the math - functions in namespace "std", such as std::sin. This - would require changes all over the code, or writing a standard - compliant header file, both of which we are not willing to do as - this is just a lack of C++ conformance of the compiler, not of the - library. -

- -

- However, even if we do this in a couple of places, we get - consistent errors with this perfectly legal piece of code: - -

-#include 
-
-void g (double);
-void f() 
-{
-  std::map m;
-  for (std::map::const_iterator i=m.begin(); i!=m.end(); ++i)
-    g(i->second);
-};
-    
- - leading to this message: - -
-tmp/x> pgCC -c x.cc
-"x.cc", line 8: error: expression must have pointer type
-      g(i->second);
-        ^
-
-1 error detected in the compilation of "x.cc".
-    
-
-

- -

- Furthermore, we consistently got this error: - -

-"/home/wolf/p/deal.II/3/deal.II/base/include/base/memory_consumption.h", line 482: internal error:
-          assertion failed at: "../src/types.c", line 4669
-
-    unsigned int memory_consumption (const T (&v)[N])
-                 ^
-
-1 catastrophic error detected in the compilation of "source/data_out_base.cc".
-Compilation aborted.
-pgCC-Fatal-/home/wolf/bin/pgcc/linux86/bin/pgcpp1 TERMINATED by signal 6
-    
- - At this point we thought we'd better use our time for something - better and wait for the next version of the compiler. -

- - -

- When the next version came (4.0), we found the front-end much - improved. However, the real showstopper is that for this code - -

-    template <int dim> struct C {
-      void f();
-    };
-
-    template <> void C<1>::f() {};
-    
- - no code is generated for C<1>::f unless the - function is used later on in the file. In contrast to - non-specialized template functions, this case is also not handled - by pgcc's prelinker which would otherwise instantiate missing - templates. Since we have many (many many) specializations of - member functions in the .cc files in the library, that means that - code for these functions is never generated. Consequently, one - gets linker errors later on. -

- -

- We believe that pgcc's behavior is not in accordance with the - standards, and is also not useful, since it forces the programmer - to put explicit specializations of functions into header files. We - had a long email exchange with Portland Group people in the summer - of 2002, who promised to review the matter. Unfortunately, the - problem still exists in pgcc 4.1 as of June 2003, making pgcc - still unusable to compile deal.II. -

- - - diff --git a/deal.II/doc/readme.html b/deal.II/doc/readme.html index fa6ff77920..f40e344140 100644 --- a/deal.II/doc/readme.html +++ b/deal.II/doc/readme.html @@ -42,9 +42,9 @@ used positively on