This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/58099] New: over-zealous Error pointer error checking in gfortran 4.8
- From: "daniel.price at monash dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 07 Aug 2013 06:12:08 +0000
- Subject: [Bug fortran/58099] New: over-zealous Error pointer error checking in gfortran 4.8
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58099
Bug ID: 58099
Summary: over-zealous Error pointer error checking in gfortran
4.8
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: daniel.price at monash dot edu
I'm having an issue with gfortran 4.8 that is blocking compilation of my public
visualisation code SPLASH (reported by several users). The issue is to do with
mismatched properties of procedure pointers when the procedure being pointed to
has the pure attribute:
../src/kernels.f90:77.13:
wfunc => w_wendlandc6
1
Error: Interface mismatch in procedure pointer assignment at (1): Mismatch in
PURE attribute
While I can provide a workaround for this by removing the pure attribute, I
think this is either a bug or a feature that I don't understand, since it must
be possible to point to pure procedures with a procedure pointer. However, I
cannot find a way to do this that compiles with gfortran 4.8. Note that this is
only an issue in 4.8, did not exist in any previous version.
The relevant module is attached and can be compiled independently of any other
code, so should be easy to reproduce.
Please let me know if it is a bug/can be fixed or not.
Thanks,
Daniel Price
versioning as follows:
-------------
$ gfortran-mp-4.8 -v
Using built-in specs.
COLLECT_GCC=gfortran-mp-4.8
COLLECT_LTO_WRAPPER=/opt/local/libexec/gcc/x86_64-apple-darwin12/4.8.1/lto-wrapper
Target: x86_64-apple-darwin12
Configured with: ../gcc-4.8.1/configure --prefix=/opt/local
--build=x86_64-apple-darwin12
--enable-languages=c,c++,objc,obj-c++,lto,fortran,java
--libdir=/opt/local/lib/gcc48 --includedir=/opt/local/include/gcc48
--infodir=/opt/local/share/info --mandir=/opt/local/share/man
--datarootdir=/opt/local/share/gcc-4.8 --with-local-prefix=/opt/local
--with-system-zlib --disable-nls --program-suffix=-mp-4.8
--with-gxx-include-dir=/opt/local/include/gcc48/c++/ --with-gmp=/opt/local
--with-mpfr=/opt/local --with-mpc=/opt/local --with-ppl=/opt/local
--with-cloog=/opt/local --enable-cloog-backend=isl
--disable-cloog-version-check --enable-stage1-checking --disable-multilib
--enable-lto --enable-libstdcxx-time --with-as=/opt/local/bin/as
--with-ld=/opt/local/bin/ld --with-ar=/opt/local/bin/ar
--with-bugurl=https://trac.macports.org/newticket --with-pkgversion='MacPorts
gcc48 4.8.1_1'
Thread model: posix
gcc version 4.8.1 (MacPorts gcc48 4.8.1_1)
-------------