Strange compiler warnings

Discussion in 'C Programming' started by Chris Peters, Jun 12, 2008.

  1. Chris Peters

    Chris Peters Guest

    Hi,

    I'm using some Fortran 77 code together with C, and the compiler is giving
    me some strange warnings. Can anyone help explain what's going on? The
    code runs just fine.


    1)
    Fortran code

    integer m_testa(10)
    common /testa/m_testa


    C code

    extern struct testa
    {
    int m_testa[10];
    };

    gives warning useless keyword or type name in empty declaration


    ==


    2)

    Fortran code

    integer*8 m_addr (20)
    common /testb/ m_addr


    C code

    extern struct testb
    {
    long long int m_addr[20]; // to contain any variable address
    };
    ....

    int value; // in the line below, my_addr is the address of an integer
    variable

    value = *(int*)testb_.m_addr[1];

    gives warning cast to pointer from integer of different size


    If I change the code to
    long long int value;
    value = *(long long int*)testb_.m_addr[1];

    I still get the same warning.

    Cheers,
    Chris Peters
     
    Chris Peters, Jun 12, 2008
    #1
    1. Advertisements

  2. Chris Peters

    Ron Ford Guest

    Fortran 77 is what John Travolta may have encountered were he not on the
    disco floor. To combine that with the difficulties attending to long long
    is the equivalent of asking his Italian friends to program. Let me take a
    couple stabs at what the warnings may have been:

    1) warning 5212: polyester is too hot in the long, long summertime.

    2) warning 3414: has Microsoft even been founded yet?

    3 warning 2784: you can take disco classes, but you were three left feet
    with Susan tonight.

    Update your capabilities with your common C extension:
    http://www.silverfrost.com/11/ftn95/overview.asp

    Zivjeli,
     
    Ron Ford, Jun 13, 2008
    #2
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.