[ECOS] Building with function tracing....
Richard Panton
rpanton@3glab.com
Thu Jun 14 06:31:00 GMT 2001
Fails around the fileio package:
/opt/ecos/packages/io/fileio/current/src/file.cxx: In function `int
open(const char *, int, ...)':
/opt/ecos/packages/io/fileio/current/src/file.cxx:195:
`cyg_tracefunction_report_' undeclared (first use this function)
/opt/ecos/packages/io/fileio/current/src/file.cxx:195: (Each undeclared
identifier is reported only once
/opt/ecos/packages/io/fileio/current/src/file.cxx:195: for each function
it appears in.)
This appears to be due to the definition (in io/fileio/current/src/fio.h)
of FILEIO_ENTRY():
#define FILEIO_ENTRY() \
CYG_MACRO_START \
CYG_REPORT_FUNCTYPE( "returning %d" ); \
CYG_FILEIO_FUNCTION_START(); \
CYG_MACRO_END
As CYG_REPORT_FUNCTYPE() declares an object (cyg_tracefunction_report_)
which must be available to CYG_REPORT_RETVAL(), it seems to me that the
CYG_MACRO_START/CYG_MACRO_END pair should be removed in this macro to
allow the object to have function-wide scope.
[And indeed, this change makes it work ;-]
Richard Panton
3G Lab Ltd.
More information about the Ecos-discuss
mailing list