[ECOS] programming technic about the macro?
Qiang Huang
jameshq@liverpool.ac.uk
Mon Oct 28 14:12:00 GMT 2002
Hi all:
I have looked into the IO support function and found the following:
for example(ARM):
#define HAL_READ_UINT16_STRING( _register_, _buf_, _count_) \
CYG_MACRO_START \
cyg_count32 _i_; \
for( _i_ = 0; _i_ < (_count_); _i_++) \
(_buf_)[_i_] = ((volatile CYG_WORD16 *)(_register_))[_i_]; \
CYG_MACRO_END
in the macro the tempory variable **_i_** has been declared, so if this
macro has been called twice inside one function will it cause any variable
redefinition (_i_) problem?e.g.
main()
{
HAL_READ_UINT16_STRING();
HAL_READ_UINT16_STRING();
}
Thank you.
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss
More information about the Ecos-discuss
mailing list