This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

inline functions unresolved symbols remain.



Hello,

I am working on TMS320C66x, and i need to inline some functions.

So i put them in a header file (or in .inl file refered by a header,both ways) and try to build my project.

The problem comes when i increase the optimization level.The projects builds successfully under no optimization,(off or none) but the linker fails to link them and returns :

error #10234-D: unresolved symbols remain
error #10010: errors encountered during linking;

Has anyone encountered,similar issues?

Is is because am not utilizing some kind of flag in the compiler options?

Thanks

BR

George 

  • Are you generating a library with that header file and adding the .lib to a project?

  • Hello,

    I am not generating a library,is a normal header file like all the others.In fact i dont know how to generate a .lib file from a header.

    Thanks

    George 

  • Hi George,

    I use CCS version 5.5. It works for me. The inline functions doesnot seem to cause any build errors. I have tested by increasing the optimization levels.

    What is the version of CCS you use and what are all the project properties options set under CCS->Build-->compiler-->optimizations?

     

    Regards,

    Shankari

    -------------------------------------------------------------------------------------------------------

    Please click the Verify Answer button on this post if it answers your question.
    --------------------------------------------------------------------------------------------------------

  • Hello Shankari,

    I am using CCS 5.4.0.Whichever the optimization level it is the project fails to link the functions.It only links and builds properly when the optimization in off or totally disabled.

    Could you please tell me if you configure your project with inline functions as i do?(In a separate header file).

    Is it possible that the error comes from the fact that the functions am inlining are "children" functions,meaning functions that are called by other ones?(Like having to perform a multiplication and calling another function to do it,the one you need to inline).

    Thanks

    George   

  • Hi,

    Maybe you have a separate declaration and definition of these inline functions (in separate files)?

    If there are some compilation units that see only the declaration (but not the inline definition), they generate a reference to a function that will never be defined since all the other compilation units that see also the definition will not export such a function (it is inlined).

  • Hello,

    If you mean the prototypes of them,yes there where in a separate header file,but i commented them out and the error is still coming...