Why not just replace with trace? /Hans > -----Original Message----- > From: Anders Widell [mailto:[email protected]] > Sent: den 8 maj 2014 15:04 > To: [email protected] > Cc: [email protected] > Subject: [devel] [PATCH 1 of 1] osaf: Fix compilation errors when building > with GCC 4.9.0 [#883] > > osaf/libs/core/common/ncs_main_pub.c | 2 +- > osaf/libs/core/common/ncs_sprr.c | 2 +- > osaf/libs/core/include/ncssysf_def.h | 4 ++-- > osaf/libs/core/leap/hj_dec.c | 4 ++-- > osaf/libs/core/leap/hj_enc.c | 8 ++++---- > osaf/libs/core/leap/hj_hdl.c | 18 +++++++++--------- > osaf/libs/core/leap/hj_ubaid.c | 6 +++--- > osaf/libs/core/leap/sysf_ipc.c | 6 +++--- > osaf/libs/core/leap/sysf_mem.c | 4 ++-- > osaf/libs/core/leap/sysf_tmr.c | 2 +- > osaf/services/infrastructure/fm/fms/fm_mds.c | 2 +- > osaf/services/saf/clmsv/clms/clms_mbcsv.c | 2 +- > osaf/services/saf/cpsv/cpd/cpd_amf.c | 4 ++-- > osaf/services/saf/cpsv/cpd/cpd_mds.c | 2 +- > osaf/services/saf/glsv/gld/gld_evt.c | 2 +- > osaf/services/saf/logsv/lgs/lgs_mbcsv.c | 2 +- > osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.c | 2 +- > 17 files changed, 36 insertions(+), 36 deletions(-) > > > OpenSAF did not build successfully with GCC 4.9.0, due to a new warning: > > In file included from ncs_sprr.c:37:0: > ncs_sprr.c: In function 'ncs_splr_api': > ../../../../osaf/libs/core/include/ncssysf_def.h:105:54: error: right-hand > operand of comma expression has no effect [- > Werror=unused-value] > #define m_LEAP_DBG_SINK(r) (TRACE("IN LEAP_DBG_SINK"), r) > ^ > ncs_sprr.c:46:58: note: in expansion of macro 'm_LEAP_DBG_SINK' > #define m_NCS_SPRR_DBG_SINK(x,y) printf("SPRR:%s\n", y),m_LEAP_DBG_SINK(x) > ^ > ncs_sprr.c:237:9: note: in expansion of macro 'm_NCS_SPRR_DBG_SINK' > rc = m_NCS_SPRR_DBG_SINK(NCSCC_RC_DUPLICATE_ENTRY, "SPLR duplication > attempted"); > > The warning actually pointed out a rather tricky bug in ncs_sprr.c, that is > not > obvious the first time you look at the code. The bug is that the comma > operator > is used within a C preprocessor macro, without surrounding parentheses. When > this macro is used in an assignment statement, the code does not do what you > would expect, since the comma operator has lower precedence than the > assignment > operator in the C language. > > By adding parentheses around the macro definition, this bug is solved. > > diff --git a/osaf/libs/core/common/ncs_main_pub.c > b/osaf/libs/core/common/ncs_main_pub.c > --- a/osaf/libs/core/common/ncs_main_pub.c > +++ b/osaf/libs/core/common/ncs_main_pub.c > @@ -759,7 +759,7 @@ void ncs_get_sys_params_arg(NCS_SYS_PARA > if (m_NCS_GET_PHYINFO_FROM_NODE_ID(sys_params->node_id, > &sys_params->shelf_id, > &sys_params->slot_id, &sub_slot_id) > != NCSCC_RC_SUCCESS) { > > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > return; > } > > diff --git a/osaf/libs/core/common/ncs_sprr.c > b/osaf/libs/core/common/ncs_sprr.c > --- a/osaf/libs/core/common/ncs_sprr.c > +++ b/osaf/libs/core/common/ncs_sprr.c > @@ -43,7 +43,7 @@ > #ifdef NDEBUG > #define m_NCS_SPRR_DBG_SINK(x,y) (x) > #else > -#define m_NCS_SPRR_DBG_SINK(x,y) printf("SPRR:%s\n", y),m_LEAP_DBG_SINK(x) > +#define m_NCS_SPRR_DBG_SINK(x,y) (printf("SPRR:%s\n", y),m_LEAP_DBG_SINK(x)) > #endif > > #define m_NCSSPRR_TRACE_ARG2(x,y) > diff --git a/osaf/libs/core/include/ncssysf_def.h > b/osaf/libs/core/include/ncssysf_def.h > --- a/osaf/libs/core/include/ncssysf_def.h > +++ b/osaf/libs/core/include/ncssysf_def.h > @@ -91,8 +91,8 @@ void opensaf_reboot(unsigned node_id, co > ** > ** > > ****************************************************************************/ > > -#define m_KEY_CHK_FMT(k,f) { if (k.fmat != f) m_LEAP_DBG_SINK(0);} > -#define m_KEY_CHK_LEN(l) { if (l > SYSF_MAX_KEY_LEN) m_LEAP_DBG_SINK(0); } > +#define m_KEY_CHK_FMT(k,f) { if (k.fmat != f) m_LEAP_DBG_SINK_VOID;} > +#define m_KEY_CHK_LEN(l) { if (l > SYSF_MAX_KEY_LEN) > m_LEAP_DBG_SINK_VOID; } > #define m_KEY_CHK_SLEN(s) { uint32_t l = m_NCS_STRLEN(s); > m_KEY_CHK_LEN(l); } > > /* > diff --git a/osaf/libs/core/leap/hj_dec.c b/osaf/libs/core/leap/hj_dec.c > --- a/osaf/libs/core/leap/hj_dec.c > +++ b/osaf/libs/core/leap/hj_dec.c > @@ -68,7 +68,7 @@ USRBUF *ncs_decode_n_octets(USRBUF *u, u > **/ > if ((s = m_MMGR_DATA_AT_START(u, count, (char *)os)) != (char *)os) { > if (s == 0) { > - m_LEAP_DBG_SINK(0); > + m_LEAP_DBG_SINK_VOID; > return (USRBUF *)0; > } > memcpy(os, s, (size_t)count); > @@ -84,7 +84,7 @@ USRBUF *ncs_decode_n_octets(USRBUF *u, u > uint8_t *ncs_flatten_n_octets(USRBUF *u, uint8_t *os, uint32_t count) > { > if (u == BNULL) { > - m_LEAP_DBG_SINK(0); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > diff --git a/osaf/libs/core/leap/hj_enc.c b/osaf/libs/core/leap/hj_enc.c > --- a/osaf/libs/core/leap/hj_enc.c > +++ b/osaf/libs/core/leap/hj_enc.c > @@ -171,7 +171,7 @@ USRBUF *ncs_prepend_n_octets(USRBUF *pbu > > pch = m_MMGR_RESERVE_AT_START(&pbuf, length, uint8_t *); > if (pch == NULL) { > - m_LEAP_DBG_SINK((long)BNULL); > + m_LEAP_DBG_SINK_VOID; > return BNULL; > } > > @@ -185,7 +185,7 @@ USRBUF *ncs_prepend_uns16(USRBUF *pbuf, > > p16 = m_MMGR_RESERVE_AT_START(&pbuf, (uint32_t)sizeof(uint16_t), > uint8_t *); > if (p16 == NULL) { > - m_LEAP_DBG_SINK((long)BNULL); > + m_LEAP_DBG_SINK_VOID; > return BNULL; > } > *p16++ = (uint8_t)(val16 >> 8); > @@ -200,7 +200,7 @@ USRBUF *ncs_prepend_uns32(USRBUF *pbuf, > > p32 = m_MMGR_RESERVE_AT_START(&pbuf, (uint32_t)sizeof(uint32_t), > uint8_t *); > if (p32 == NULL) { > - m_LEAP_DBG_SINK((long)BNULL); > + m_LEAP_DBG_SINK_VOID; > return BNULL; > } > *p32++ = (uint8_t)(val32 >> 24); > @@ -217,7 +217,7 @@ USRBUF *ncs_prepend_uns64(USRBUF *pbuf, > > p64 = m_MMGR_RESERVE_AT_START(&pbuf, 8, uint8_t *); > if (p64 == NULL) { > - m_LEAP_DBG_SINK((long)BNULL); > + m_LEAP_DBG_SINK_VOID; > return BNULL; > } > > diff --git a/osaf/libs/core/leap/hj_hdl.c b/osaf/libs/core/leap/hj_hdl.c > --- a/osaf/libs/core/leap/hj_hdl.c > +++ b/osaf/libs/core/leap/hj_hdl.c > @@ -398,7 +398,7 @@ NCSCONTEXT ncshm_take_hdl(NCS_SERVICE_ID > if ((cell = hm_find_cell(hdl)) != NULL) { > if ((cell->seq_id == hdl->seq_id) && > ((NCS_SERVICE_ID)cell->svc_id == id) && (cell->busy == true)) { > if (++cell->use_ct == 0) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); /* Too > many takes()s!! */ > + m_LEAP_DBG_SINK_VOID; /* Too many takes()s!! > */ > } > > data = cell->data; > @@ -432,7 +432,7 @@ void ncshm_give_hdl(uint32_t uhdl) > if ((cell = hm_find_cell(hdl)) != NULL) { > if (cell->seq_id == hdl->seq_id) { > if (--cell->use_ct < 1) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); /* > Client BUG..Too many give()s!! */ > + m_LEAP_DBG_SINK_VOID; /* Client BUG..Too many > give()s!! */ > cell->use_ct++; > } else { > if ((cell->busy == false) && (cell->use_ct == > 1)) > @@ -464,7 +464,7 @@ HM_FREE *hm_alloc_cell(uint8_t id) > > if (pmgr->free_pool == NULL) { > if (hm_make_free_cells(pmgr) != NCSCC_RC_SUCCESS) { > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > } > @@ -495,12 +495,12 @@ HM_CELL *hm_find_cell(HM_HDL *hdl) > HM_CELLS *spot; > > if ((unit = gl_hm.unit[hdl->idx1]) == NULL) { > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > if ((spot = unit->cells[hdl->idx2]) == NULL) { > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > @@ -622,7 +622,7 @@ HM_FREE *hm_target_cell(HM_HDL *hdl) > > if ((unit = gl_hm.unit[hdl->idx1]) == NULL) { > if ((unit = (HM_UNIT*) malloc(sizeof(HM_UNIT))) == NULL) { > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > @@ -632,7 +632,7 @@ HM_FREE *hm_target_cell(HM_HDL *hdl) > > if ((cells = unit->cells[hdl->idx2]) == NULL) { > if ((cells = (HM_CELLS*) malloc(sizeof(HM_CELLS))) == NULL) { > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > @@ -669,7 +669,7 @@ HM_FREE *hm_target_cell(HM_HDL *hdl) > back = back->next; > } > > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > @@ -775,7 +775,7 @@ uint32_t ncslpg_give(NCSLPG_OBJ *pg, uin > uint32_t ncslpg_create(NCSLPG_OBJ *pg) > { > if (pg->open == true) > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > pg->open = true; > pg->inhere = 0; > return NCSCC_RC_SUCCESS; > diff --git a/osaf/libs/core/leap/hj_ubaid.c b/osaf/libs/core/leap/hj_ubaid.c > --- a/osaf/libs/core/leap/hj_ubaid.c > +++ b/osaf/libs/core/leap/hj_ubaid.c > @@ -329,7 +329,7 @@ void ncs_dec_init_space(NCS_UBAID *uba, > uint8_t *ncs_dec_flatten_space(NCS_UBAID *uba, uint8_t *os, int32_t count) > { > if (uba->ub == BNULL) { > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > @@ -619,7 +619,7 @@ USRBUF *ncs_decode_pointer(USRBUF *i_ub, > *o_recvd_ptr = ncs_decode_32bit(&s); > else { > if (p_len != sizeof(NCSCONTEXT)) > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > *o_recvd_ptr = ncs_decode_64bit(&s); > } > > @@ -673,7 +673,7 @@ uint32_t ncs_uba_decode_pointer(NCS_UBAI > *o_recvd_ptr = ncs_decode_32bit(&s); > else { > if (p_len != sizeof(NCSCONTEXT)) > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > > *o_recvd_ptr = ncs_decode_64bit(&s); > } > diff --git a/osaf/libs/core/leap/sysf_ipc.c b/osaf/libs/core/leap/sysf_ipc.c > --- a/osaf/libs/core/leap/sysf_ipc.c > +++ b/osaf/libs/core/leap/sysf_ipc.c > @@ -360,7 +360,7 @@ static NCS_IPC_MSG *ncs_ipc_recv_common( > /* Should never reach here */ > m_NCS_UNLOCK(&ncs_ipc->queue_lock, > NCS_LOCK_WRITE); > ncshm_give_hdl((uint32_t)*mbx); > - m_LEAP_DBG_SINK(0); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } else { > m_NCS_UNLOCK(&ncs_ipc->queue_lock, > NCS_LOCK_WRITE); > @@ -381,7 +381,7 @@ static NCS_IPC_MSG *ncs_ipc_recv_common( > if (ipc_dequeue_ind_processing(ncs_ipc, > active_queue) != NCSCC_RC_SUCCESS) { > > m_NCS_UNLOCK(&ncs_ipc->queue_lock, NCS_LOCK_WRITE); > ncshm_give_hdl((uint32_t)*mbx); > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } else { > > m_NCS_UNLOCK(&ncs_ipc->queue_lock, NCS_LOCK_WRITE); > @@ -394,7 +394,7 @@ static NCS_IPC_MSG *ncs_ipc_recv_common( > assert(0); > m_NCS_UNLOCK(&ncs_ipc->queue_lock, NCS_LOCK_WRITE); > ncshm_give_hdl((uint32_t)*mbx); > - m_LEAP_DBG_SINK(NULL); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > diff --git a/osaf/libs/core/leap/sysf_mem.c b/osaf/libs/core/leap/sysf_mem.c > --- a/osaf/libs/core/leap/sysf_mem.c > +++ b/osaf/libs/core/leap/sysf_mem.c > @@ -139,7 +139,7 @@ void sysf_heap_free(void *data, uint8_t > > void *sysf_stub_alloc(uint32_t b, uint8_t pool_id, uint8_t pri) > { > - m_LEAP_DBG_SINK(0); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > > @@ -427,7 +427,7 @@ USRBUF *sysf_alloc_pkt(unsigned char poo > > if (pool_id >= UB_MAX_POOLS) { > m_PMGR_UNLK(&gl_ub_pool_mgr.lock); > - m_LEAP_DBG_SINK(0); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > ud = (USRDATA > *)gl_ub_pool_mgr.pools[pool_id].mem_alloc(sizeof(USRDATA), pool_id, priority); > diff --git a/osaf/libs/core/leap/sysf_tmr.c b/osaf/libs/core/leap/sysf_tmr.c > --- a/osaf/libs/core/leap/sysf_tmr.c > +++ b/osaf/libs/core/leap/sysf_tmr.c > @@ -737,7 +737,7 @@ tmr_t ncs_tmr_start(tmr_t tid, uint32_t > if (m_NCS_SEL_OBJ_IND(gl_tcb.sel_obj) != NCSCC_RC_SUCCESS) { > /* We would never reach here! */ > m_NCS_UNLOCK(&gl_tcb.safe.enter_lock, NCS_LOCK_WRITE); > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > return NULL; > } > } > diff --git a/osaf/services/infrastructure/fm/fms/fm_mds.c > b/osaf/services/infrastructure/fm/fms/fm_mds.c > --- a/osaf/services/infrastructure/fm/fms/fm_mds.c > +++ b/osaf/services/infrastructure/fm/fms/fm_mds.c > @@ -708,7 +708,7 @@ static uint32_t fm_fm_mds_enc(MDS_CALLBA > case GFM_GFM_EVT_NODE_INFO_EXCHANGE: > data = ncs_enc_reserve_space(uba, (2 * sizeof(uint32_t))); > if (data == NULL) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > } > > ncs_encode_32bit(&data, msg->info.node_info.node_id); > diff --git a/osaf/services/saf/clmsv/clms/clms_mbcsv.c > b/osaf/services/saf/clmsv/clms/clms_mbcsv.c > --- a/osaf/services/saf/clmsv/clms/clms_mbcsv.c > +++ b/osaf/services/saf/clmsv/clms/clms_mbcsv.c > @@ -2010,7 +2010,7 @@ static uint32_t ckpt_decode_cbk_handler( > TRACE_2(" INCORRECT DECODE called"); > rc = NCSCC_RC_FAILURE; > TRACE(" INCORRECT DECODE called, FAILED"); > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > break; > } /*End switch(io_msg_type) */ > > diff --git a/osaf/services/saf/cpsv/cpd/cpd_amf.c > b/osaf/services/saf/cpsv/cpd/cpd_amf.c > --- a/osaf/services/saf/cpsv/cpd/cpd_amf.c > +++ b/osaf/services/saf/cpsv/cpd/cpd_amf.c > @@ -181,7 +181,7 @@ void cpd_saf_csi_set_cb(SaInvocationT in > vda_info.info.vdest_chg_role.i_new_role = mds_role; > rc = ncsvda_api(&vda_info); > if (NCSCC_RC_SUCCESS != rc) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > LOG_ER("cpd vdest change role failed"); > ncshm_give_hdl(cb->cpd_hdl); > TRACE_LEAVE(); > @@ -206,7 +206,7 @@ void cpd_saf_csi_set_cb(SaInvocationT in > vda_info.info.vdest_chg_role.i_new_role = mds_role; > rc = ncsvda_api(&vda_info); > if (NCSCC_RC_SUCCESS != rc) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > LOG_ER("cpd vdest change role failed"); > ncshm_give_hdl(cb->cpd_hdl); > TRACE_LEAVE(); > diff --git a/osaf/services/saf/cpsv/cpd/cpd_mds.c > b/osaf/services/saf/cpsv/cpd/cpd_mds.c > --- a/osaf/services/saf/cpsv/cpd/cpd_mds.c > +++ b/osaf/services/saf/cpsv/cpd/cpd_mds.c > @@ -84,7 +84,7 @@ uint32_t cpd_mds_vdest_create(CPD_CB *cb > /* Create VDEST */ > rc = ncsvda_api(&arg); > if (NCSCC_RC_SUCCESS != rc) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > return rc; > } > > diff --git a/osaf/services/saf/glsv/gld/gld_evt.c > b/osaf/services/saf/glsv/gld/gld_evt.c > --- a/osaf/services/saf/glsv/gld/gld_evt.c > +++ b/osaf/services/saf/glsv/gld/gld_evt.c > @@ -688,7 +688,7 @@ static uint32_t gld_quisced_process(GLSV > gld_cb->is_impl_set = false; > rc = glsv_gld_mbcsv_chgrole(gld_cb); > if (rc != NCSCC_RC_SUCCESS) { > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > goto end; > } > saAmfResponse(gld_cb->amf_hdl, gld_cb->invocation, saErr); > diff --git a/osaf/services/saf/logsv/lgs/lgs_mbcsv.c > b/osaf/services/saf/logsv/lgs/lgs_mbcsv.c > --- a/osaf/services/saf/logsv/lgs/lgs_mbcsv.c > +++ b/osaf/services/saf/logsv/lgs/lgs_mbcsv.c > @@ -832,7 +832,7 @@ static uint32_t ckpt_decode_cbk_handler( > TRACE_2(" INCORRECT DECODE called"); > rc = NCSCC_RC_FAILURE; > TRACE(" INCORRECT DECODE called, FAILED"); > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > break; > } /*End switch(io_msg_type) */ > > diff --git a/osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.c > b/osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.c > --- a/osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.c > +++ b/osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.c > @@ -680,7 +680,7 @@ static uint32_t ckpt_decode_cbk_handler( > TRACE_2(" INCORRECT DECODE called"); > rc = NCSCC_RC_FAILURE; > TRACE(" INCORRECT DECODE called, FAILED"); > - m_LEAP_DBG_SINK(NCSCC_RC_FAILURE); > + m_LEAP_DBG_SINK_VOID; > break; > } /*End switch(io_msg_type) */ > > > ------------------------------------------------------------------------------ > Is your legacy SCM system holding you back? Join Perforce May 7 to find out: > • 3 signs your SCM is hindering your productivity > • Requirements for releasing software faster > • Expert tips and advice for migrating your SCM now > http://p.sf.net/sfu/perforce > _______________________________________________ > Opensaf-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/opensaf-devel
------------------------------------------------------------------------------ Is your legacy SCM system holding you back? Join Perforce May 7 to find out: • 3 signs your SCM is hindering your productivity • Requirements for releasing software faster • Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
