<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Problem with Fortran compiler not recognizing routines used previously in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739787#M178461</link>
    <description>&lt;P&gt;Simple. It is looking for a loadmenu interface that matches what you have asked for. I am guessing the ghmodule is integer(4) and&amp;nbsp; not integer(handle).&amp;nbsp; In x64 both inputs to loadmenu will be integer(8) but you are supplying an integer(4) and an integer(8) and it is looking for a interface that matches that which does not exist!&lt;/P&gt;</description>
    <pubDate>Thu, 05 Mar 2026 22:11:31 GMT</pubDate>
    <dc:creator>andrew_4619</dc:creator>
    <dc:date>2026-03-05T22:11:31Z</dc:date>
    <item>
      <title>Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739781#M178460</link>
      <description>&lt;P&gt;Having problems with the Fortran compiler not recognizing certain routines which had been previously used in the program, more specifically, createwindowex. loadicon and loadmenu.&amp;nbsp; See drop box.&amp;nbsp; What happened to them and are there other routines one could use instead?&amp;nbsp; &amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2026 20:47:11 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739781#M178460</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-05T20:47:11Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739787#M178461</link>
      <description>&lt;P&gt;Simple. It is looking for a loadmenu interface that matches what you have asked for. I am guessing the ghmodule is integer(4) and&amp;nbsp; not integer(handle).&amp;nbsp; In x64 both inputs to loadmenu will be integer(8) but you are supplying an integer(4) and an integer(8) and it is looking for a interface that matches that which does not exist!&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2026 22:11:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739787#M178461</guid>
      <dc:creator>andrew_4619</dc:creator>
      <dc:date>2026-03-05T22:11:31Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739831#M178462</link>
      <description>&lt;P&gt;The issue happens because CreateWindowEx, LoadIcon, and LoadMenu are Windows API functions, not built-in Fortran routines. If the compiler can’t recognize them, it usually means the Windows API libraries or interfaces are not linked/included.&lt;/P&gt;&lt;P&gt;Possible reasons:&lt;/P&gt;&lt;P&gt;Missing Windows API interface/module.&lt;/P&gt;&lt;P&gt;Required libraries (like user32) are not linked.&lt;/P&gt;&lt;P&gt;Compiler update removed old compatibility modules.&lt;/P&gt;&lt;P&gt;Fix:&lt;/P&gt;&lt;P&gt;Link the user32 library when compiling.&lt;/P&gt;&lt;P&gt;Include the proper Win32 API interface in your Fortran code.&lt;/P&gt;&lt;P&gt;Alternative:&lt;BR /&gt;You can also use GUI libraries such as GTK for Fortran instead of calling the Windows API directly.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2026 04:23:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739831#M178462</guid>
      <dc:creator>danielbrown8998</dc:creator>
      <dc:date>2026-03-06T04:23:54Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739910#M178466</link>
      <description>&lt;P&gt;Thanks.&amp;nbsp; Got rid of one of the NULL and IDI_APPLICATION errors, but unsure how to deal with&amp;nbsp;CmnDlgMenu.&amp;nbsp; I have included screen dumps to show the files involved.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2026 13:46:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739910#M178466</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-06T13:46:55Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739913#M178467</link>
      <description>&lt;P&gt;go back and read my last comment more carefully you did not fix it.&lt;/P&gt;&lt;P&gt;then to understand better:&lt;/P&gt;&lt;P&gt;google "MSDN LoadMenu" that tells you about that function and what types are used.&lt;/P&gt;&lt;P&gt;At the bottom of that page you will see this is in "User32.lib". If you go to the folder you found IFWINTY.f90 you will&amp;nbsp; find USER32.f90, and if you open and find LoadMenu you will see the interface and how the items are declared in Fortran.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the record in X86 the variables in your screen grab ::&amp;nbsp; ghmodule, hmenu,&amp;nbsp; hchildmenu,&amp;nbsp; hmenuwindow are all 8 byte 'handles'.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2026 14:34:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739913#M178467</guid>
      <dc:creator>andrew_4619</dc:creator>
      <dc:date>2026-03-06T14:34:59Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739920#M178468</link>
      <description>&lt;P&gt;"For the record in X86 the variables in your screen grab :: ghmodule, hmenu, hchildmenu, hmenuwindow are all 8 byte 'handles'. "&lt;/P&gt;&lt;P&gt;Are you sure?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2026 16:11:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739920#M178468</guid>
      <dc:creator>GVautier</dc:creator>
      <dc:date>2026-03-06T16:11:07Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739923#M178469</link>
      <description>&lt;P&gt;Yes, but it easy enough to check by looking at those sdk routines on msdn&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2026 17:22:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1739923#M178469</guid>
      <dc:creator>andrew_4619</dc:creator>
      <dc:date>2026-03-06T17:22:20Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740370#M178477</link>
      <description>&lt;P&gt;I have inserted the line user32 within the win_intr module.&amp;nbsp; See drop box.&amp;nbsp; Is that correct?&lt;/P&gt;&lt;P&gt;How do I include Win32 API interface in my Fortran code?&lt;/P&gt;</description>
      <pubDate>Tue, 10 Mar 2026 13:53:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740370#M178477</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-10T13:53:02Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740374#M178479</link>
      <description>&lt;P&gt;You've done that with the USE line, but only for the parts of the Windows API that come from user32.lib. If you want access to the entire Windows API (at least the part for which the Intel modules define interfaces - I don't think this has been updated in ten years), put in "use ifwim" instead.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Mar 2026 14:01:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740374#M178479</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2026-03-10T14:01:52Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740414#M178483</link>
      <description>&lt;P&gt;Thanks, but I couldn't find the ifwim module in any of the directories on my computer.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Mar 2026 21:07:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740414#M178483</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-10T21:07:19Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740433#M178486</link>
      <description>&lt;P&gt;Sorry, typo. I meant ifwin.&lt;/P&gt;</description>
      <pubDate>Wed, 11 Mar 2026 00:32:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740433#M178486</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2026-03-11T00:32:33Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740506#M178489</link>
      <description>&lt;P&gt;Thanks for the clarification.&amp;nbsp; While I can find createwindowex routine in user.f90, where might I find createwindow.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 11 Mar 2026 14:59:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740506#M178489</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-11T14:59:13Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740512#M178490</link>
      <description>&lt;P&gt;It's defined in module IFWBASE - probably because there isn't an actual Win32 API function named that, but rather a macro (in C, as supplied by Microsoft.) In Intel Fortran, CreateWindow is implemented by a wrapper function that comes from ifwin.lib.&lt;/P&gt;</description>
      <pubDate>Wed, 11 Mar 2026 16:11:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740512#M178490</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2026-03-11T16:11:28Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740660#M178501</link>
      <description>&lt;P&gt;Thanks - extremely useful.&amp;nbsp; Not sure why all the relevant content is scattered all over the place – very inconvenient.&lt;/P&gt;&lt;P&gt;A colleague of mine developed the code for interfacing my Fortran program with Visual Studio two decades ago, which worked well upto this recent version of Visual Studio.&amp;nbsp; Like others, and as you can guess from the forum exchanges, I am discovering numerous issues preventing successful operation of my code.&amp;nbsp; However, I am trying to familiarize myself with the code my colleague developed and feel I am making progress, albeit slowly.&amp;nbsp; Next question is regarding parameters she used, which I don’t believed she defined, but obtained from files like the one you suggested for the createwindows, ifwbase.f90.&amp;nbsp; Where is WM_SETFONT defined and what is the significance of MAKELONG(TRUE,1) in this sendmessage call.&amp;nbsp; See drop box.&amp;nbsp; There is no other mention of MAKELONG parameter anywhere else in the program.&amp;nbsp; Also there are other parameter types such as T_TEXTMETRIC, STATUS, TOOLS, etc., which I can’t seem to find defined within my program.&lt;/P&gt;</description>
      <pubDate>Thu, 12 Mar 2026 15:48:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740660#M178501</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-12T15:48:00Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740676#M178507</link>
      <description>&lt;P&gt;WM_SETFONT (as well as T_TEXTMETRIC) is defined in module IFWINTY, which is implicitly included when you USE any of the other Windows API modules. MAKELONG is another one of those things that were initially a C macro and is provided by IFWBASE.&lt;/P&gt;&lt;P&gt;Hint: If you want to know where something is defined, use a file search tool (or even Visual Studio) to search the .f90 files in&amp;nbsp;"C:\Program Files (x86)\Intel\oneAPI\compiler\latest\opt\compiler\include" for the thing you want.&lt;/P&gt;&lt;P&gt;STATUS and TOOLS are a bit too generic and are probably declared somewhere in your sources.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Mar 2026 19:28:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740676#M178507</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2026-03-12T19:28:13Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740677#M178508</link>
      <description>&lt;P&gt;As for why things are in various modules - they're largely organized by which Windows API .lib they come from, as documented in the MSDN library description of the function. Types and PARAMETER constants are generally in IFWINTY, except for some recently created modules I wrote such as module PSAPI. See&amp;nbsp;&lt;A href="https://stevelionel.com/drfortran/2006/10/05/domestic-or-imported/" target="_blank" rel="noopener"&gt;Domestic or Imported? - Doctor Fortran&lt;/A&gt;&amp;nbsp;for more on this. &amp;nbsp;If everything was packed into one large module it would dramatically slow down compile time. This way you can be more selective.&lt;/P&gt;</description>
      <pubDate>Thu, 12 Mar 2026 19:33:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740677#M178508</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2026-03-12T19:33:51Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740800#M178512</link>
      <description>&lt;P&gt;Thanks.&amp;nbsp; That was very helpful.&amp;nbsp; However, I still am confused re. whether or not to define parameters and where they should be located&lt;/P&gt;&lt;P&gt;The screen dump in drop box shows the compilation process, giving the 1st warning (ghwndmain) in the osda.f90 routine.&amp;nbsp;&lt;/P&gt;&lt;P&gt;For convenience I decided to remove a large chunk of my program and just concentrate on a few files and try to eliminate errors/warnings in a systematic manner.&lt;/P&gt;&lt;P&gt;I am developing the program as a windows app rather than a console one and I know that linking the few files included will not allow that, but I’m working on sorting out the compile issues.&amp;nbsp; Also included in the drop box is a zip file containing the files currently included in the project.&amp;nbsp; Appreciate your help.&lt;/P&gt;</description>
      <pubDate>Fri, 13 Mar 2026 15:01:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740800#M178512</guid>
      <dc:creator>ivf_ian</dc:creator>
      <dc:date>2026-03-13T15:01:55Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740816#M178513</link>
      <description>&lt;P&gt;I'm looking at your sources, and in some of the files I see correct declarations of, say, ghwndmain, commented out, leaving them implicitly declared as the wrong type. You have "integer(handle)" a lot, but not for some of these handles and where you do have them, they are usually commented out. In the case of hinst, you have it just declared as default integer rather than integer(handle).&amp;nbsp;&lt;/P&gt;&lt;P&gt;There are also a bunch of handle variables (typically starting with "h") in Dia_intr.inc that are not declared as integer(handle) but should be. I also saw some errors about variable HPEN whose declaration is commented out in Plot.inc, so it ends up as a default real scalar instead of a integer(handle) array as the code wants.&lt;/P&gt;</description>
      <pubDate>Fri, 13 Mar 2026 16:29:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740816#M178513</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2026-03-13T16:29:27Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740817#M178514</link>
      <description>&lt;P&gt;Steve, I also looked, one that perturbed me was:&lt;/P&gt;&lt;LI-CODE lang="fortran"&gt;interface !lib=ifwin.lib
integer(4) function convertFtoCstring(cstring,fstring);
!DEC$ ATTRIBUTES DEFAULT :: convertFtoCstring
!DEC$ IF DEFINED(_M_IX86)
!DEC$ ATTRIBUTES STDCALL, ALIAS : '_convertFtoCstring@8' :: convertFtoCstring
!DEC$ ELSE
!DEC$ ATTRIBUTES STDCALL, ALIAS :  'convertFtoCstring'   :: convertFtoCstring
!DEC$ ENDIF
!DEC$ ATTRIBUTES REFERENCE::cstring
character *(*)  cstring
integer       fstring 
end function convertFtoCstring
end interface&lt;/LI-CODE&gt;&lt;P&gt;Which is in IFWBASE.f90 in his code this routine is called with (in effect) loc(fortran string). I am guessing this worked in 32 bit&amp;nbsp; which suggests to me that this interface is probably bad but not seeing any documentation&amp;nbsp; then who knows?&lt;/P&gt;</description>
      <pubDate>Fri, 13 Mar 2026 17:00:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740817#M178514</guid>
      <dc:creator>andrew_4619</dc:creator>
      <dc:date>2026-03-13T17:00:39Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Fortran compiler not recognizing routines used previously</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740818#M178515</link>
      <description>&lt;P&gt;Those are just the tip of the iceberg. Derived types with bad handle types, lots of vars passed as message parameters with wrong types, IMPLICIT variables, ...&amp;nbsp; Quite a bigish job for someone who knows what they are doing.....&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 13 Mar 2026 17:15:37 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problem-with-Fortran-compiler-not-recognizing-routines-used/m-p/1740818#M178515</guid>
      <dc:creator>andrew_4619</dc:creator>
      <dc:date>2026-03-13T17:15:37Z</dc:date>
    </item>
  </channel>
</rss>

