

Before that line executes, in the debugger I can see that t4%Name equals 'Type 4 initial name' as expected. In the code below, the AV happens at "call t4%GetName(name)". The main program will not be able to USE the module where the extended type is defined, except indirectly through the DLL. So far I have come up with code that enables the main program to instantiate an object of the extended type, and see public data members, but I get Access Violation when I try to invoke a type-bound procedure. Here's what I have so far. The extended type needs to be able to be accessed by a pointer and it needs to contain type-bound procedures that override procedures in the base type. I am trying to find a way to have a DLL that defines a type that extends a base derived type that is used by the main executable. Microsoft (R) Incremental Linker Version 9.01Ĭopyright (C) Microsoft Corporation. Intel(R) Visual Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 15.0.0.108 Build 20140726Ĭopyright (C) 1985-2014 Intel Corporation. >ifort /check:all /warn:all /standard-semantics " StringASentence.f90"& " StringASentence.exe" TYPE(String), ALLOCATABLE :: a_sentence(:)Ī_sentence = This week's round of infectious disease from one of the local biological weapons research facilities ("preschool" or "day care" - not sure which) has laid me low, making it difficult for me to string a sentence together.
