Parameterized Derived Types

Parameterized Derived Types

Will ifort be supporting parameterized derived types any time soon? It seems this is one of the last major F2003 functionalities currently not supported by ifort.

6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

"Soon"? No. This and User-defined derived type I/O are the two big things not yet done. Is this something you're looking for specifically? We will do it eventually, I am sure.

Retired 12/31/2016

Yes, I am specifically looking for this so that I can implement C++ template style algorithms into my code.

Any update on this? I would like to use this for setting the 'len' parameters of a derived type. Rather than put allocatable arrays in types, this seems cleaner (the array size would be fixed automatically) and safer (the compiler could tell you if you try to add two different sized pieces for instance). 

Additionaly you would not have an issue with reallocate left hand side.

The initial poster indicated that he wanted to use a derived type as a parameter (whole object is const)

Weymouth is asking for something more like a template. Where instance of the template results in an object with fixed layout based on a flexible template. In the requested case, a fixed array size based on template arguments. You might be able to finess some of this with FPP.

Jim Dempsey

There is also an open source preprocessor implemented in python called BlockIt/PyF95++ which implements templating and an STL of sorts.

A few articles have been posted to ACM Fortran Forum about this (and other) preprocessors.

Leave a Comment

Please sign in to add a comment. Not a member? Join today