- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have a few UDDTIO issues outstanding from the beta that introduced them. I don't think this duplicates any of those.
MODULE M20140921c IMPLICIT NONE PRIVATE TYPE, PUBLIC :: JustSomeType END TYPE JustSomeType TYPE :: TypeWithPointerComponent TYPE(JustSomeType), POINTER :: PointerComponent END TYPE TypeWithPointerComponent TYPE, PUBLIC :: TypeWithWriteFormattedBinding PRIVATE TYPE(TypeWithPointerComponent) :: ComponentWithAPointerComponent CONTAINS PROCEDURE, NON_OVERRIDABLE, PRIVATE :: write_formatted GENERIC :: WRITE(FORMATTED) => write_formatted END TYPE TypeWithWriteFormattedBinding CONTAINS SUBROUTINE write_formatted(dtv, unit, iotype, v_list, iostat, iomsg) CLASS(TypeWithWriteFormattedBinding), INTENT(IN) :: dtv INTEGER, INTENT(IN) :: unit CHARACTER(*), INTENT(IN) :: iotype INTEGER, INTENT(IN) :: v_list(:) INTEGER, INTENT(OUT) :: iostat CHARACTER(*), INTENT(INOUT) :: iomsg !*************************************************************************** WRITE (unit, "(A)") 'Hello!' END SUBROUTINE write_formatted SUBROUTINE s TYPE(TypeWithWriteFormattedBinding) :: t PRINT *, t PRINT "(DT)", t END SUBROUTINE s END MODULE M20140921c
>ifort /c /warn:all /check:all /standard-semantics /stand UDDDTIOComponentWithPointer.f90 Intel(R) Visual Fortran Compiler XE for applications running on IA-32, Version 15.0.0.108 Build 20140726 Copyright (C) 1985-2014 Intel Corporation. All rights reserved. UDDDTIOComponentWithPointer.f90(21): warning #6843: A dummy argument with an explicit INTENT(OUT) declaration is not given an explicit value. [IOSTAT] SUBROUTINE write_formatted(dtv, unit, iotype, v_list, iostat, iomsg) --------------------------------------------------------^ UDDDTIOComponentWithPointer.f90(21): remark #7712: This variable has not been used. [DTV] SUBROUTINE write_formatted(dtv, unit, iotype, v_list, iostat, iomsg) -----------------------------^ (...etc, until...) UDDDTIOComponentWithPointer.f90(35): error #5514: A derived type I/O list item that contains a pointer component requires a user-defined derived-type input/output procedure. PRINT "(DT)", t ----^ compilation aborted for UDDDTIOComponentWithPointer.f90 (code 1)
But, but, but... it has one...
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, we'll take a look.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Escalated as DPD200361280.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This has been fixed for a release later this year. We were not properly keeping track of types with pointers in nested UDIO.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page