<?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: Fortran-Dynamic C Interface - PLEASE HELP! in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763008#M18416</link>
    <description>&lt;P&gt;Thanks for the reply!&lt;/P&gt;
&lt;P&gt;Do I use the type structure 'gribfield' in my fortran INTERFACE code to match the c structure? Is my code correct for this or do I not use the TYPE structure along with the allocatable array declarations?&lt;/P&gt;</description>
    <pubDate>Tue, 23 Oct 2007 13:28:00 GMT</pubDate>
    <dc:creator>bwilt</dc:creator>
    <dc:date>2007-10-23T13:28:00Z</dc:date>
    <item>
      <title>Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763006#M18414</link>
      <description>&lt;P&gt;I have c libraries that unpack GRIB2 data that I receive from NCEP/NWS. The data looks correct INSIDE my c routines, but I am at a loss to accessing the c structure from fortran. The c library creates and dynamically allocates the a structure called 'gribfield' as follows:&lt;/P&gt;&lt;FONT color="#0000ff" size="2"&gt;
&lt;P&gt;struct&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; gribfield {&lt;P&gt;&lt;/P&gt;
&lt;P&gt;g2int version,discipline;&lt;/P&gt;
&lt;P&gt;g2int *idsect;&lt;/P&gt;
&lt;P&gt;g2int idsectlen;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;unsigned&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;char&lt;/FONT&gt;&lt;FONT size="2"&gt; *local;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;g2int locallen;&lt;/P&gt;
&lt;P&gt;g2int ifldnum;&lt;/P&gt;
&lt;P&gt;g2int griddef,ngrdpts;&lt;/P&gt;
&lt;P&gt;g2int numoct_opt,interp_opt,num_opt;&lt;/P&gt;
&lt;P&gt;g2int *list_opt;&lt;/P&gt;
&lt;P&gt;g2int igdtnum,igdtlen;&lt;/P&gt;
&lt;P&gt;g2int *igdtmpl;&lt;/P&gt;
&lt;P&gt;g2int ipdtnum,ipdtlen;&lt;/P&gt;
&lt;P&gt;g2int *ipdtmpl;&lt;/P&gt;
&lt;P&gt;g2int num_coord;&lt;/P&gt;
&lt;P&gt;g2float *coord_list;&lt;/P&gt;
&lt;P&gt;g2int ndpts,idrtnum,idrtlen;&lt;/P&gt;
&lt;P&gt;g2int *idrtmpl;&lt;/P&gt;
&lt;P&gt;g2int unpacked;&lt;/P&gt;
&lt;P&gt;g2int expanded;&lt;/P&gt;
&lt;P&gt;g2int ibmap;&lt;/P&gt;
&lt;P&gt;g2int *bmap;&lt;/P&gt;
&lt;P&gt;g2float *fld;&lt;/P&gt;
&lt;P&gt;};&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;
&lt;P&gt;typedef&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;struct&lt;/FONT&gt;&lt;FONT size="2"&gt; gribfield gribfield;&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;The C routine I call simply returns a pointer to this structure as follows:&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;
&lt;P&gt;g2int g2_getfld(&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;unsigned&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;char&lt;/FONT&gt;&lt;FONT size="2"&gt; *cgrib,g2int ifldnum,g2int unpack,g2int expand,&lt;P&gt;&lt;/P&gt;
&lt;P&gt;gribfield **gfld)&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;I have tried everything trying to access this data from IVF 10.025 with no luck. My interface code is as follows:&lt;/P&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;interface&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;function&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; g2_getfld (mgrib,ifldnum,unpack,expand,gfld)&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#008000" size="2"&gt;!DEC$ ATTRIBUTES C, DECORATE, ALIAS:'g2_getfld' :: g2_getfld&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; (kind=&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int_ptr_kind&lt;/FONT&gt;&lt;FONT size="2"&gt;()) gfld&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; gribfield&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;sequence&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; version&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; discipline&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: idsect(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; idsectlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;character&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: local(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; locallen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; ifldnum&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; griddef,ngrdpts&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; numoct_opt,interp_opt,num_opt&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: list_opt(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; igdtnum,igdtlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: igdtmpl(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; ipdtnum,ipdtlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: ipdtmpl(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; num_coord&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;real&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: coord_list(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; ndpts,idrtnum,idrtlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: idrtmpl(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; unpacked&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; expanded&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; ibmap&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: bmap(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;real&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;allocatable&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; :: fld2(:)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;end&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;pointer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; (gfld, version) &lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;character&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;*1 mgrib(131040)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer*4&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; ifldnum,unpack,expand&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;end function&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; g2_getfld&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;end interface&lt;/FONT&gt;&lt;/B&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;&lt;FONT color="#000000"&gt;How can I access the data from the gribfield structure in Fortran? For example, I want to print the parameter 'version'?&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;&lt;FONT color="#000000"&gt;Thanks for any help you can provide!&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;&lt;FONT color="#000000"&gt;Brett A. Wilt&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;</description>
      <pubDate>Tue, 23 Oct 2007 03:30:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763006#M18414</guid>
      <dc:creator>bwilt</dc:creator>
      <dc:date>2007-10-23T03:30:02Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763007#M18415</link>
      <description>No, you cannot map a Fortran POINTER or ALLOCATABLE array to a C pointer. What you can do is use one of the following:&lt;BR /&gt;&lt;BR /&gt;* Integer (or Cray) pointers on Fortran side, or, better&lt;BR /&gt;* ISO_C_BINDING module&lt;BR /&gt;&lt;BR /&gt;The former is a non-standard (but common) extension. The latter is the new standard, so I recommend its use:&lt;BR /&gt;&lt;BR /&gt;In short, each g2int* member will map to a TYPE(C_PTR) in Fortran. To dereference it into an array, you have to use a temporary POINTER array:&lt;BR /&gt;&lt;PRE&gt;integer, pointer:: pidsect(:)&lt;/PRE&gt;&lt;PRE&gt;...&lt;/PRE&gt;&lt;PRE&gt;call C_F_POINTER(gfld%idsect, pidsect, (/idsectlen/) )&lt;/PRE&gt;&lt;PRE&gt;write(*,*) pidsect(1)&lt;/PRE&gt;In the spirit of ISO_C_BINDING, you may also want to change !DEC$ATTRIBUTES into BIND(C, NAME="&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT color="#ff0000" size="2"&gt;&lt;FONT color="#ff0000" size="2"&gt;&lt;FONT size="2"&gt;&lt;B&gt;&lt;FONT color="#008000" size="2"&gt;g2_getfld&lt;/FONT&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;"). Don't forget to USE, INTRINSIC:: ISO_C_BINDING on the relevant places.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 23 Oct 2007 11:00:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763007#M18415</guid>
      <dc:creator>Jugoslav_Dujic</dc:creator>
      <dc:date>2007-10-23T11:00:03Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763008#M18416</link>
      <description>&lt;P&gt;Thanks for the reply!&lt;/P&gt;
&lt;P&gt;Do I use the type structure 'gribfield' in my fortran INTERFACE code to match the c structure? Is my code correct for this or do I not use the TYPE structure along with the allocatable array declarations?&lt;/P&gt;</description>
      <pubDate>Tue, 23 Oct 2007 13:28:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763008#M18416</guid>
      <dc:creator>bwilt</dc:creator>
      <dc:date>2007-10-23T13:28:00Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763009#M18417</link>
      <description>Ah, I missed that. &lt;BR /&gt;&lt;BR /&gt;INTERFACE is somewhat peculiar in Fortran, as the declaration of TYPE gribfiled will not be "visible" outside the INTERFACE (unless there's IMPORT statement supported in IVF10 -- I didn't check -- or the SEQUENCE attribute in both type definitions). Instead, it's best that you write it like this:&lt;BR /&gt;&lt;BR /&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;MODULE m_gribfield&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;USE, INTRINSIC:: ISO_C_BINDING&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;INTEGER, PARAMETER:: g2int =4&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;TYPE gribfield&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt; INTEGER(g2int):: version, discipline&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt; TYPE(C_PTR):: idsect&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt; INTEGER(g2int):: idsectlen&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt; ...&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;END TYPE gribfield&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;END MODULE m_gribfield&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;INTERFACE&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; function&lt;/FONT&gt;&lt;/B&gt;&lt;FONT size="2"&gt; g2_getfld (mgrib,ifldnum,unpack,expand,gfld) bind(C, NAME="&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;B&gt;&lt;FONT color="#008000" size="2"&gt;g2_getfld&lt;/FONT&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;")&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt; USE m_gribfield&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt; INTEGER(&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;g2int&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;)::&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; g2_getfld&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt; INTEGER(&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;g2int&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;), VALUE::&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; ifldnum&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;INTEGER(&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;g2int&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;), &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;VALUE::&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; unpack&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;INTEGER(&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;g2int&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;), &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;VALUE:: &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times
 New Roman" size="2"&gt;&lt;FONT size="2"&gt;expand&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; TYPE(C_PTR):: gfld&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt; END FUNCTION&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman" size="2"&gt;&lt;FONT size="2"&gt;END INTERFACE&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;TYPE(g2_getfld), POINTER:: gfld&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT face="Times New Roman"&gt;TYPE(C_PTR):: p_gfld&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT face="Times New Roman"&gt;...&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;
&lt;PRE&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT face="Times New Roman"&gt;iret = g2_getfld(...p_gfld)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;FONT size="2"&gt;&lt;FONT size="2"&gt;&lt;FONT face="Times New Roman"&gt;CALL C_F_POINTER(p_gfld, gfld)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;I'm not positive what is mgrib/cgrib, so I left it untranslated -- you may wish to retain the character, or do it through type(C_PTR) as well.&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 23 Oct 2007 15:57:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763009#M18417</guid>
      <dc:creator>Jugoslav_Dujic</dc:creator>
      <dc:date>2007-10-23T15:57:29Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763010#M18418</link>
      <description>IMPORT is supported.&lt;BR /&gt;</description>
      <pubDate>Tue, 23 Oct 2007 17:08:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763010#M18418</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2007-10-23T17:08:00Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763011#M18419</link>
      <description>&lt;P&gt;Ireally appreciate your time and help with this. I am notextensively familiar with c, so this is learning for me. Here is where I am now:&lt;/P&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;module&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; m_gribfield&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;use&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;intrinsic&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;:: iso_c_binding&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;parameter&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;:: g2int=4&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; gribfield&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: version&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: discipline&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: idsect&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: idsectlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: local&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: locallen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: ifldnum&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: griddef&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: ngrdpts&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: numoct_opt&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: interp_opt&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: num_opt&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: list_opt&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: igdtnum&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: igdtlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: igdtmpl&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: ipdtnum&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g
2int):: ipdtlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: ipdtmpl&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: num_coord&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: coord_list&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: ndpts&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: idrtnum&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: idrtlen&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: idrtmpl&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: unpacked&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: expanded&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: ibmap&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: bmap&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: fld2&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;end&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; gribfield&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;end module&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; m_gribfield&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#a52a2a" size="2"&gt;&lt;STRONG&gt;subroutine readgrib&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size="2"&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;use&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; m_gribfield&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;use&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;, &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;intrinsic&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;:: iso_c_binding&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;
&lt;P&gt;type&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2_getfld), &lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;pointer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;:: gfld&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;
&lt;P&gt;type&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: p_gfld&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;&lt;FONT size="2"&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;interface&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; function&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; g2_getfld (mgrib,ifldnum,unpack,expand,gfld)&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#008000" size="2"&gt; !dec$ attributes c, decorate, alias:'g2_getfld' :: g2_getfld&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; use&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; m_gribfield&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT siz="" e="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; character&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;*1 mgrib(131040)&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int):: g2_getfld &lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int), value:: ifldnum&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int), value:: unpack&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; integer&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(g2int), value:: expand&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; type&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;(c_ptr):: gfld &lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt; end function&lt;/FONT&gt;&lt;/B&gt;&lt;FONT&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt; g2_getfld&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#0000ff" size="2"&gt;end interface&lt;/FONT&gt;&lt;/B&gt;&lt;P&gt;&lt;/P&gt;&lt;FONT color="#0000ff" size="2"&gt;&lt;FONT color="#ff0000" size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;FONT color="#000000"&gt;ierr=g2_getfld(%ref(mgrib),1,1,0,%ref(gfld))&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;call&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;FONT color="#000000"&gt; c_f_pointer(p_gfld, gfld)&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;print&lt;/FONT&gt;&lt;FONT size="2"&gt;&lt;FONT color="#000000"&gt;*,gfld%version&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size="2"&gt;return&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#a52a2a" size="2"&gt;end&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;&lt;FONT color="#ff0000"&gt;Here are my compiler error messages:&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;Error1 Error: This is not a derived type name. [G2_GETFLD]C:DevelopmentModel_x32_VS2005Sourcegribread.f1370&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;This occurs when the line &lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;type&lt;FONT size="2"&gt;(g2_getfld), &lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;pointer&lt;/FONT&gt;&lt;FONT size="2"&gt;:: gfld &lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;&lt;FONT size="2"&gt;is added to the subroutione as indicated above.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size="2"&gt;
&lt;P&gt;&lt;BR /&gt;Error2 Error: This variable or component must be of a derived or structure type [GFLD]C:DevelopmentModel_x32_VS2005Sourcegribread.f1476&lt;BR /&gt;Error3 Error: This is not a field name that is defined in the encompassing structure. [VERSION]C:DevelopmentModel_x32_VS2005Sourcegribread.f1476&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;These occur when I try and print the value of version with:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;print&lt;FONT size="2"&gt;&lt;FONT color="#000000"&gt;*,gfld%version&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;Can you show me how to print the value of version? Is it incorrect above?&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 23 Oct 2007 18:51:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763011#M18419</guid>
      <dc:creator>bwilt</dc:creator>
      <dc:date>2007-10-23T18:51:49Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763012#M18420</link>
      <description>&lt;P&gt;What if you BIND(C,NAME="g2_getfld" )? but keep the !DEC$ meta command as it acts as a workaround for the compiler's failure to prepend a _ to the symbol.&lt;/P&gt;
&lt;P&gt;Gerry&lt;/P&gt;</description>
      <pubDate>Tue, 23 Oct 2007 20:32:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763012#M18420</guid>
      <dc:creator>g_f_thomas</dc:creator>
      <dc:date>2007-10-23T20:32:35Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763013#M18421</link>
      <description>Don't use that ATTRIBUTES line at the same time as BIND(C). At best you may get odd results, at worst a compile-time error (a future update will complain). &lt;BR /&gt;</description>
      <pubDate>Tue, 23 Oct 2007 20:36:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763013#M18421</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2007-10-23T20:36:17Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763014#M18422</link>
      <description>First problem - the type you declared is gribfield, not m2_getfield. The other errors derive from that.&lt;BR /&gt;&lt;BR /&gt;Your ATTRIBUTES line looks fine to me as it is.&lt;BR /&gt;</description>
      <pubDate>Tue, 23 Oct 2007 20:40:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763014#M18422</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2007-10-23T20:40:06Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763015#M18423</link>
      <description>&lt;P&gt;He could throw out the Alias and retain the Decorate and all would be fine unless Decorate's behavior changes in the future. Now you know why the HP guy suggestedthat one needs to experiment from release to release.&lt;/P&gt;
&lt;P&gt;Gerry&lt;/P&gt;</description>
      <pubDate>Tue, 23 Oct 2007 21:24:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763015#M18423</guid>
      <dc:creator>g_f_thomas</dc:creator>
      <dc:date>2007-10-23T21:24:15Z</dc:date>
    </item>
    <item>
      <title>Re: Fortran-Dynamic C Interface - PLEASE HELP!</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763016#M18424</link>
      <description>Gerry, you keep bringing up that HP article which was wrong. It is also not relevant here. &lt;BR /&gt;</description>
      <pubDate>Tue, 23 Oct 2007 23:14:41 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Fortran-Dynamic-C-Interface-PLEASE-HELP/m-p/763016#M18424</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2007-10-23T23:14:41Z</dc:date>
    </item>
  </channel>
</rss>

