Quantcast
Channel: Intel® Fortran Compiler
Viewing all articles
Browse latest Browse all 3270

Internal procedure as actual argument (error)

$
0
0

Dear readers, I am seeking you for advice on passing internal procedures as actual arguments, which is a fortran 2008 feature supported by ifort 15.0. The following module does not compile in ifort 15.0, because

error #7069: The characteristics of the associated actual function result
 differ from the characteristics of the dummy function result.   [NESTED]
		call with_dummy_function(nested)
-----------------------------------------^
compilation aborted for test.f90 (code 1)

Here is the code:

module m
	implicit none

	abstract interface
		function dummy_function()
			logical :: dummy_function
		end function
	end interface

contains

	subroutine host()
		call with_dummy_function(nested)
	contains
		function nested()
			logical :: nested
			nested = .true.
		end function
	end subroutine

	subroutine with_dummy_function(func)
		procedure(dummy_function), pointer, intent(in) :: func
	end subroutine
end module

While I managed to compile and run the same code with ifort 14 (service packs .3 and .4 ), any tips on how to get this feature to work with ifort 15.0 are appreciated!

Best regards

Ferdinand


Viewing all articles
Browse latest Browse all 3270

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>