Ah, come to think of it, I think that f2py only supports literal kind values. Maybe that's your problem.
Paul On 17. apr. 2012, at 07:58, Sameer Grover wrote: > On Tuesday 17 April 2012 11:02 AM, John Mitchell wrote: >> Hi, >> >> I am using f2py to pass a numpy array of type numpy.int8 to fortran. It >> seems like I am misunderstanding something because I just can't make it >> work. >> >> Here is what I am doing. >> >> PYTHON >> b=numpy.array(numpy.zeros(shape=(10,),dtype=numpy.int8),order='F') >> b[0]=1 >> b[2]=1 >> b[3]=1 >> b >> array([1, 0, 1, 1, 0, 0, 0, 0, 0, 0], dtype=int8) >> >> >> >> FORTRAN >> subroutine print_bit_array(bits,n) >> use iso_fortran_env >> integer,intent(in)::n >> integer(kind=int8),intent(in),dimension(n)::bits >> print*,'bits = ',bits >> end subroutine print_bit_array >> >> >> RESULT when calling fortran from python >> bits = 1 0 0 0 0 0 0 0 1 0 >> >> Any Ideas? >> thanks, >> John >> >> >> >> >> _______________________________________________ >> NumPy-Discussion mailing list >> >> NumPy-Discussion@scipy.org >> http://mail.scipy.org/mailman/listinfo/numpy-discussion > It seems to work if "integer(kind=int8)" is replaced with "integer(8)" or > "integer(1)". Don't know why, though. > > Sameer > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > http://mail.scipy.org/mailman/listinfo/numpy-discussion _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion