Fortran + OpenMP + polymorphism: what exactly is not supported?

隐身守侯 提交于 2020-02-03 08:21:29

问题


I am aware that the OpenMP 4.5 standard says that in Fortran "polymorphic entities" are not supported.

What exactly does this mean? Does this only exclude calls to type-bound procedures that have a PASS attribute, but I can still use an instance of a user-defined type that has type-bound procedures in other ways (e.g. accessing its components)?

Does this limitation only apply to the OMP PARALLEL block, or also to procedures called from this block, or to the entire compilation unit?

Would be great if someone could point me to some clarifying documentation. Thanks!

EDIT: Made explicit that I meant type-bound procedures with the PASS attribute specified.

来源:https://stackoverflow.com/questions/43188844/fortran-openmp-polymorphism-what-exactly-is-not-supported

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!