Search code examples
clinuxvxworks

what does `_TYPE_fpos_t;` mean?


vxTypes.h

#if !defined(__RTP__)
#ifdef _TYPE_fpos_t
#define _FPOS_T
_TYPE_fpos_t;
#undef _TYPE_fpos_t
#endif
#endif /* __RTP__ */

UPDATE 00:

stdio.h

typedef struct fpos_t
    {   /* file position */
    long _Off;  /* can be system dependent */
    _Mbstatet _Wstate;
    } fpos_t

and i have a compiling error (conflict) in fpos_t type

error: conflicting declaration 'struct fpos_t'...'fpos_t' has a previous declaration as `typedef long int fpos_t'

so i need to understand the code first to fix it, can someone explain what does the code do, specially the _TYPE_fpos_t; part?


Solution

  • I had the same problem. Assuming you're using the gcc toolset, use "-nostdinc" compiler option to prevent GCC from using the default search path. (The diab toolset should have a similar option.) Your project makefile should already contain a list of "-Idir" entries that should make system headers visible to the compiler.