I was a bit surprised to find that our f90 compiler was not happy with the following: function test integer :: test I was puzzled why it is necessary to have instead: function test() integer :: test I was writting a module where I wanted all variables private and access functions to return the value. Hence functions with no arguments. The () on the function statement seem completely redundant so why have them? p112 on fortran90/95 explained appears to show them as required so it's obviously part of the standard. No big deal, I'm just curious. Glenn -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dr. Glenn Carver, Science Coordinator, Centre for Atmospheric Science, Cambridge University, Chemistry Dept., Lensfield Road, Cambridge, CB2 1EW, UK. mailto:[log in to unmask] Phone: +44 (1223) 336524 http://www.atm.ch.cam.ac.uk/~glenn/ Fax: +44 (1223) 336473 "I never think of the future, it comes soon enough" - Albert Einstein ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%