From 5f823b401a9834149510587f919d2f4f69848898 Mon Sep 17 00:00:00 2001
From: Cedric Roux <cedric.roux@eurecom.fr>
Date: Mon, 28 Mar 2016 22:45:20 +0200
Subject: [PATCH] some more warning removals

---
 .../ETH_TRANSPORT/bypass_session_layer.c      |  2 +-
 .../SIMULATION/ETH_TRANSPORT/emu_transport.c  |  1 -
 openair1/SIMULATION/LTE_PHY/dlsim.c           |  4 +++-
 openair1/SIMULATION/LTE_PHY/mbmssim.c         |  8 +++----
 openair1/SIMULATION/LTE_PHY/pbchsim.c         | 17 +++++++------
 openair1/SIMULATION/LTE_PHY/pdcchsim.c        | 11 ++++++---
 openair1/SIMULATION/LTE_PHY/prachsim.c        | 24 ++++++++++++-------
 openair2/ENB_APP/enb_app.c                    |  6 +++++
 openair2/ENB_APP/enb_config.c                 |  4 ++++
 openair2/LAYER2/MAC/eNB_scheduler.c           |  2 +-
 openair2/LAYER2/PDCP_v10.1.0/pdcp.c           |  2 +-
 openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c      |  4 +++-
 openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c        | 12 ++++++++++
 openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c        |  2 +-
 openair2/LAYER2/RLC/rlc.c                     |  3 +++
 openair2/LAYER2/RLC/rlc_rrc.c                 |  8 +++++++
 openair2/RRC/LITE/L2_interface.c              |  8 +++++--
 openair2/RRC/LITE/rrc_UE.c                    |  7 +++++-
 openair2/RRC/LITE/rrc_common.c                |  3 +++
 openair2/RRC/LITE/rrc_eNB.c                   |  4 ++++
 openair2/UTIL/LOG/log.c                       |  8 +++++++
 openair2/UTIL/OMG/sumo.c                      |  2 +-
 targets/ARCH/COMMON/common_lib.c              |  3 ++-
 .../ARCH/EXMIMO/USERSPACE/LIB/gain_control.h  |  2 ++
 .../ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h  |  2 ++
 targets/RT/USER/lte-softmodem.c               |  5 ++++
 targets/RT/USER/lte-ue.c                      | 10 ++++----
 targets/SIMU/USER/channel_sim.c               |  4 ++--
 targets/SIMU/USER/event_handler.c             |  9 ++++---
 targets/SIMU/USER/oaisim.c                    | 22 ++++++++++-------
 targets/SIMU/USER/oaisim_functions.c          | 14 +++++------
 31 files changed, 151 insertions(+), 62 deletions(-)

diff --git a/openair1/SIMULATION/ETH_TRANSPORT/bypass_session_layer.c b/openair1/SIMULATION/ETH_TRANSPORT/bypass_session_layer.c
index 765952133a..0ced6e0ceb 100644
--- a/openair1/SIMULATION/ETH_TRANSPORT/bypass_session_layer.c
+++ b/openair1/SIMULATION/ETH_TRANSPORT/bypass_session_layer.c
@@ -288,7 +288,7 @@ int emu_transport_handle_ue_info(bypass_msg_header_t *messg,
               n_ue, total_header+total_tbs,total_header,total_tbs);
       }
 
-#warning "CC id should be adjusted, set to zero for the moment"
+//#warning "CC id should be adjusted, set to zero for the moment"
       memcpy(&UE_transport_info[n_ue][CC_id], UE_info, total_header + total_tbs);
 
       /* Go to the next UE info */
diff --git a/openair1/SIMULATION/ETH_TRANSPORT/emu_transport.c b/openair1/SIMULATION/ETH_TRANSPORT/emu_transport.c
index 8c5516eabd..ec15e7c668 100644
--- a/openair1/SIMULATION/ETH_TRANSPORT/emu_transport.c
+++ b/openair1/SIMULATION/ETH_TRANSPORT/emu_transport.c
@@ -291,7 +291,6 @@ void fill_phy_enb_vars(unsigned int enb_id, uint8_t CC_id,unsigned int next_slot
   LTE_eNB_DLSCH_t *dlsch_eNB;
   unsigned short ue_id;
   uint8_t nb_total_dci;
-  int i;
 
   // eNB
   // PBCH : copy payload
diff --git a/openair1/SIMULATION/LTE_PHY/dlsim.c b/openair1/SIMULATION/LTE_PHY/dlsim.c
index d67024810a..6f2c1f1d22 100644
--- a/openair1/SIMULATION/LTE_PHY/dlsim.c
+++ b/openair1/SIMULATION/LTE_PHY/dlsim.c
@@ -220,7 +220,7 @@ int main(int argc, char **argv)
   uint8_t N_RB_DL=25,osf=1;
   frame_t frame_type = FDD;
   int xforms=0;
-  FD_lte_phy_scope_ue *form_ue;
+  FD_lte_phy_scope_ue *form_ue = NULL;
   char title[255];
   uint32_t DLSCH_RB_ALLOC = 0x1fff;
   int numCCE=0;
@@ -2624,6 +2624,8 @@ PMI_FEEDBACK:
                                               num_pdcch_symbols,
                                               PHY_vars_eNB->dlsch_eNB[k][0],
                                               PHY_vars_eNB->dlsch_eNB[k][1]);	      
+              /* avoid gcc warnings */
+              (void)re_allocated;
 
               stop_meas(&PHY_vars_eNB->dlsch_modulation_stats);
               /*
diff --git a/openair1/SIMULATION/LTE_PHY/mbmssim.c b/openair1/SIMULATION/LTE_PHY/mbmssim.c
index 0044b2ff51..8522b7be9a 100644
--- a/openair1/SIMULATION/LTE_PHY/mbmssim.c
+++ b/openair1/SIMULATION/LTE_PHY/mbmssim.c
@@ -583,10 +583,10 @@ int main(int argc, char **argv)
               mcs,N_RB_DL,mcs,N_RB_DL,errs[0],
               mcs,N_RB_DL,mcs,N_RB_DL,trials);
     else
-      fprintf(fd,"SNR_awgn_%d = [SNR_awgn_%d %d]; errs_mch_awgn_%d =[errs_mch_awgn_%f  %d]; mch_trials_awgn_%d =[mch_trials_awgn_%d %d];\n",
-              mcs,N_RB_DL,mcs,N_RB_DL,SNR,
-              mcs,N_RB_DL,mcs,N_RB_DL,errs[0],
-              mcs,N_RB_DL,mcs,N_RB_DL,trials);
+      fprintf(fd,"SNR_awgn_%d = [SNR_awgn_%d %f]; errs_mch_awgn_%d =[errs_mch_awgn_%d  %d]; mch_trials_awgn_%d =[mch_trials_awgn_%d %d];\n",
+              N_RB_DL,N_RB_DL,SNR,
+              N_RB_DL,N_RB_DL,errs[0],
+              N_RB_DL,N_RB_DL,trials);
 
     fflush(fd);
 
diff --git a/openair1/SIMULATION/LTE_PHY/pbchsim.c b/openair1/SIMULATION/LTE_PHY/pbchsim.c
index 319c2ed008..739c7e121f 100644
--- a/openair1/SIMULATION/LTE_PHY/pbchsim.c
+++ b/openair1/SIMULATION/LTE_PHY/pbchsim.c
@@ -80,9 +80,9 @@ int main(int argc, char **argv)
   unsigned char pbch_pdu[6];
   //  int sync_pos, sync_pos_slot;
   //  FILE *rx_frame_file;
-  FILE *output_fd;
+  FILE *output_fd = NULL;
   uint8_t write_output_file=0;
-  int result;
+  //int result;
   int freq_offset;
   //  int subframe_offset;
   //  char fname[40], vname[40];
@@ -91,8 +91,8 @@ int main(int argc, char **argv)
   uint16_t Nid_cell=0;
 
   int n_frames=1;
-  channel_desc_t *eNB2UE,*eNB2UE1,*eNB2UE2;
-  uint32_t nsymb,tx_lev,tx_lev1,tx_lev2;
+  channel_desc_t *eNB2UE,*eNB2UE1 = NULL,*eNB2UE2 = NULL;
+  uint32_t nsymb,tx_lev,tx_lev1 = 0,tx_lev2 = 0;
   uint8_t extended_prefix_flag=0;
   int8_t interf1=-21,interf2=-21;
   LTE_DL_FRAME_PARMS *frame_parms;
@@ -104,12 +104,12 @@ int main(int argc, char **argv)
   char input_val_str[50],input_val_str2[50];
   //  double input_val1,input_val2;
   //  uint16_t amask=0;
-  uint8_t frame_mod4,num_pdcch_symbols;
+  uint8_t frame_mod4,num_pdcch_symbols = 0;
   uint16_t NB_RB=25;
 
   SCM_t channel_model=AWGN;//Rayleigh1_anticorr;
 
-  DCI_ALLOC_t dci_alloc[8];
+  //DCI_ALLOC_t dci_alloc[8];
   uint8_t abstraction_flag=0;//,calibration_flag=0;
   double pbch_sinr;
   int pbch_tx_ant;
@@ -782,7 +782,10 @@ int main(int argc, char **argv)
     i=0;
 
     while (!feof(input_fd)) {
-      fscanf(input_fd,"%s %s",input_val_str,input_val_str2);//&input_val1,&input_val2);
+      if (fscanf(input_fd,"%s %s",input_val_str,input_val_str2) != 2) { //&input_val1,&input_val2);
+        printf("%s:%d:%s: error with fscanf, exiting\n", __FILE__, __LINE__, __FUNCTION__);
+        exit(1);
+      }
 
       if ((i%4)==0) {
         ((short*)txdata[0])[i/2] = (short)((1<<15)*strtod(input_val_str,NULL));
diff --git a/openair1/SIMULATION/LTE_PHY/pdcchsim.c b/openair1/SIMULATION/LTE_PHY/pdcchsim.c
index 3c717d2625..0c51959f14 100644
--- a/openair1/SIMULATION/LTE_PHY/pdcchsim.c
+++ b/openair1/SIMULATION/LTE_PHY/pdcchsim.c
@@ -67,9 +67,9 @@ DCI_PDU *get_dci(LTE_DL_FRAME_PARMS *lte_frame_parms,uint8_t log2L, uint8_t log2
   uint32_t UL_alloc_pdu[2];
 
   int i;
-  int dci_length_bytes,dci_length;
-  int BCCH_pdu_size_bits, BCCH_pdu_size_bytes;
-  int UL_pdu_size_bits, UL_pdu_size_bytes;
+  int dci_length_bytes=0,dci_length=0;
+  int BCCH_pdu_size_bits=0, BCCH_pdu_size_bytes=0;
+  int UL_pdu_size_bits=0, UL_pdu_size_bytes=0;
   int mcs = 3;
 
   DCI_pdu.Num_ue_spec_dci = 0;
@@ -789,6 +789,11 @@ int main(int argc, char **argv)
     while (!feof(input_fd)) {
       ret=fscanf(input_fd,"%s %s",input_val_str,input_val_str2);//&input_val1,&input_val2);
 
+      if (ret != 2) {
+        printf("%s:%d:%s: fscanf error, exiting\n", __FILE__, __LINE__, __FUNCTION__);
+        exit(1);
+      }
+
       if ((i%4)==0) {
         ((short*)txdata[0])[i/2] = (short)((1<<15)*strtod(input_val_str,NULL));
         ((short*)txdata[0])[(i/2)+1] = (short)((1<<15)*strtod(input_val_str2,NULL));
diff --git a/openair1/SIMULATION/LTE_PHY/prachsim.c b/openair1/SIMULATION/LTE_PHY/prachsim.c
index 187a521e07..0fab08a3d1 100644
--- a/openair1/SIMULATION/LTE_PHY/prachsim.c
+++ b/openair1/SIMULATION/LTE_PHY/prachsim.c
@@ -58,6 +58,8 @@ PHY_VARS_UE *PHY_vars_UE;
 
 extern uint16_t prach_root_sequence_map0_3[838];
 
+void dump_prach_config(LTE_DL_FRAME_PARMS *frame_parms,uint8_t subframe);
+
 int main(int argc, char **argv)
 {
 
@@ -74,7 +76,7 @@ int main(int argc, char **argv)
   int **txdata;
   double **s_re,**s_im,**r_re,**r_im;
   double iqim=0.0;
-  int trial, ntrials=1;
+  int trial; //, ntrials=1;
   uint8_t transmission_mode = 1,n_tx=1,n_rx=1;
   uint16_t Nid_cell=0;
 
@@ -82,7 +84,7 @@ int main(int argc, char **argv)
   uint8_t hs_flag=0;
   int n_frames=1;
   channel_desc_t *UE2eNB;
-  uint32_t nsymb,tx_lev,tx_lev_dB;
+  uint32_t nsymb,tx_lev; //,tx_lev_dB;
   uint8_t extended_prefix_flag=0;
   //  int8_t interf1=-19,interf2=-19;
   LTE_DL_FRAME_PARMS *frame_parms;
@@ -101,8 +103,8 @@ int main(int argc, char **argv)
   uint16_t preamble_energy_list[64],preamble_tx=99,preamble_delay_list[64];
   uint16_t preamble_max,preamble_energy_max;
   PRACH_RESOURCES_t prach_resources;
-  uint8_t prach_fmt;
-  int N_ZC;
+  //uint8_t prach_fmt;
+  //int N_ZC;
   int delay = 0;
   double delay_avg=0;
   double ue_speed = 0;
@@ -126,7 +128,8 @@ int main(int argc, char **argv)
     case 'a':
       printf("Running AWGN simulation\n");
       awgn_flag = 1;
-      ntrials=1;
+      /* ntrials not used later, no need to set */
+      //ntrials=1;
       break;
 
     case 'd':
@@ -404,9 +407,11 @@ int main(int argc, char **argv)
   PHY_vars_eNB->lte_frame_parms.prach_config_common.prach_ConfigInfo.highSpeedFlag=hs_flag;
   PHY_vars_eNB->lte_frame_parms.prach_config_common.prach_ConfigInfo.prach_FreqOffset=0;
 
-  prach_fmt = get_prach_fmt(PHY_vars_eNB->lte_frame_parms.prach_config_common.prach_ConfigInfo.prach_ConfigIndex,
-                            PHY_vars_eNB->lte_frame_parms.frame_type);
-  N_ZC = (prach_fmt <4)?839:139;
+  /* N_ZC not used later, so prach_fmt is also useless, don't set */
+  //prach_fmt = get_prach_fmt(PHY_vars_eNB->lte_frame_parms.prach_config_common.prach_ConfigInfo.prach_ConfigIndex,
+  //                          PHY_vars_eNB->lte_frame_parms.frame_type);
+  /* N_ZC not used later, no need to set */
+  //N_ZC = (prach_fmt <4)?839:139;
 
   compute_prach_seq(&PHY_vars_eNB->lte_frame_parms.prach_config_common,PHY_vars_eNB->lte_frame_parms.frame_type,PHY_vars_eNB->X_u);
 
@@ -430,7 +435,8 @@ int main(int argc, char **argv)
                           subframe,
                           0); //Nf
 
-  tx_lev_dB = (unsigned int) dB_fixed(tx_lev);
+  /* tx_lev_dB not used later, no need to set */
+  //tx_lev_dB = (unsigned int) dB_fixed(tx_lev);
 
   write_output("txsig0_new.m","txs0", &txdata[0][subframe*frame_parms->samples_per_tti],frame_parms->samples_per_tti,1,1);
   //write_output("txsig1.m","txs1", txdata[1],FRAME_LENGTH_COMPLEX_SAMPLES,1,1);
diff --git a/openair2/ENB_APP/enb_app.c b/openair2/ENB_APP/enb_app.c
index 70fb5ad61f..6d95c215db 100644
--- a/openair2/ENB_APP/enb_app.c
+++ b/openair2/ENB_APP/enb_app.c
@@ -285,6 +285,9 @@ void *eNB_app_task(void *args_p)
   instance_t                      instance;
   int                             result;
 
+  /* for no gcc warnings */
+  (void)instance;
+
   itti_mark_task_ready (TASK_ENB_APP);
 
 # if defined(ENABLE_USE_MME)
@@ -420,5 +423,8 @@ void *eNB_app_task(void *args_p)
 
 #endif
 
+  /* for no gcc warnings */
+  (void)enb_properties_p;
+
   return NULL;
 }
diff --git a/openair2/ENB_APP/enb_config.c b/openair2/ENB_APP/enb_config.c
index e96ef91326..51d5f3805f 100755
--- a/openair2/ENB_APP/enb_config.c
+++ b/openair2/ENB_APP/enb_config.c
@@ -649,6 +649,10 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP)
   char*             osa_log_level                 = NULL;
   char*             osa_log_verbosity             = NULL;
 
+  /* for no gcc warnings */
+  (void)astring;
+  (void)my_int;
+
   memset((char*) (enb_properties.properties), 0 , MAX_ENB * sizeof(Enb_properties_t *));
   memset((char*)active_enb,     0 , MAX_ENB * sizeof(char*));
 
diff --git a/openair2/LAYER2/MAC/eNB_scheduler.c b/openair2/LAYER2/MAC/eNB_scheduler.c
index 21e9337dbb..df867693a6 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler.c
@@ -86,7 +86,7 @@ void eNB_dlsch_ulsch_scheduler(module_id_t module_idP,uint8_t cooperation_flag,
   int mbsfn_status[MAX_NUM_CCs];
   protocol_ctxt_t   ctxt;
 #ifdef EXMIMO
-  int ret;
+  //int ret;
 #endif
 #if defined(ENABLE_ITTI)
   MessageDef   *msg_p;
diff --git a/openair2/LAYER2/PDCP_v10.1.0/pdcp.c b/openair2/LAYER2/PDCP_v10.1.0/pdcp.c
index 638c8051b0..d210b98f6a 100755
--- a/openair2/LAYER2/PDCP_v10.1.0/pdcp.c
+++ b/openair2/LAYER2/PDCP_v10.1.0/pdcp.c
@@ -692,7 +692,7 @@ pdcp_data_ind(
 #if defined(USER_MODE) && defined(OAI_EMU)
 
   if (oai_emulation.info.otg_enabled == 1) {
-    unsigned int dst_instance;
+    //unsigned int dst_instance;
     int    ctime;
 
     if ((pdcp_p->rlc_mode == RLC_MODE_AM)&&(MBMS_flagP==0) ) {
diff --git a/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c b/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
index 787d463b32..d7e1fe3551 100755
--- a/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
+++ b/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
@@ -313,6 +313,8 @@ int pdcp_fifo_read_input_sdus (const protocol_ctxt_t* const  ctxt_pP)
   hash_key_t                     key       = HASHTABLE_NOT_A_KEY_VALUE;
   hashtable_rc_t                 h_rc;
   struct pdcp_netlink_element_s* data_p    = NULL;
+  /* avoid gcc warnings */
+  (void)data_p;
   module_id_t                    ue_id     = 0;
   pdcp_t*                        pdcp_p    = NULL;
 # if defined(PDCP_USE_NETLINK_QUEUES)
@@ -565,7 +567,7 @@ int pdcp_fifo_read_input_sdus (const protocol_ctxt_t* const  ctxt_pP)
               }
             } else  { // rb_id =0, thus interpreated as broadcast and transported as multiple unicast
               // is a broadcast packet, we have to send this packet on all default RABS of all connected UEs
-#warning CODE TO BE REVIEWED, ONLY WORK FOR SIMPLE TOPOLOGY CASES
+//#warning CODE TO BE REVIEWED, ONLY WORK FOR SIMPLE TOPOLOGY CASES
               for (ue_id = 0; ue_id < NB_UE_INST; ue_id++) {
                 if (oai_emulation.info.eNB_ue_module_id_to_rnti[ctxt_cpy.module_id][ue_id] != NOT_A_RNTI) {
                   ctxt.rnti = oai_emulation.info.eNB_ue_module_id_to_rnti[ctxt_cpy.module_id][ue_id];
diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
index b92340348a..0b8abf3838 100755
--- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
+++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
@@ -682,6 +682,12 @@ rlc_am_mac_data_request (
   MessageDef         *msg_p;
 #   endif
   int                 octet_index, index;
+  /* for no gcc warnings */
+  (void)num_nack;
+  (void)message_string;
+  (void)message_string_size;
+  (void)octet_index;
+  (void)index;
 #endif
 
   list_init (&data_req.data, NULL);
@@ -916,6 +922,12 @@ rlc_am_mac_data_indication (
   MessageDef         *msg_p;
 #   endif
   int                 octet_index, index;
+  /* for no gcc warnings */
+  (void)num_nack;
+  (void)message_string;
+  (void)message_string_size;
+  (void)octet_index;
+  (void)index;
 #endif
 
   (void)l_rlc_p; /* avoid gcc warning "unused variable" */
diff --git a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c
index 8aab33f54c..7b0c9890ed 100755
--- a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c
+++ b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c
@@ -745,7 +745,7 @@ rlc_um_data_req (const protocol_ctxt_t* const ctxt_pP, void *rlc_pP, mem_block_t
     /*
      * Print every single octet in hexadecimal form
      */
-    message_string_size += sprintf(&message_string[message_string_size], " %02x", (uint8_t*)(&sdu_pP->data[data_offset])[octet_index]);
+    message_string_size += sprintf(&message_string[message_string_size], " %02x", ((uint8_t*)(&sdu_pP->data[data_offset]))[octet_index]);
     /*
      * Align newline and pipes according to the octets in groups of 2
      */
diff --git a/openair2/LAYER2/RLC/rlc.c b/openair2/LAYER2/RLC/rlc.c
index e19c6b0b0a..1397387f22 100644
--- a/openair2/LAYER2/RLC/rlc.c
+++ b/openair2/LAYER2/RLC/rlc.c
@@ -602,6 +602,9 @@ rlc_module_init (void)
   int          k;
   module_id_t  module_id1;
 
+  /* for no gcc warnings */
+  (void)k;
+
   LOG_D(RLC, "MODULE INIT\n");
   rlc_rrc_data_ind  = NULL;
   rlc_rrc_data_conf = NULL;
diff --git a/openair2/LAYER2/RLC/rlc_rrc.c b/openair2/LAYER2/RLC/rlc_rrc.c
index f78cf90631..eccea461ab 100644
--- a/openair2/LAYER2/RLC/rlc_rrc.c
+++ b/openair2/LAYER2/RLC/rlc_rrc.c
@@ -87,6 +87,11 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t   * const ctxt_pP
 
 #endif
 
+  /* for no gcc warnings */
+  (void)rlc_union_p;
+  (void)key;
+  (void)h_rc;
+
   LOG_D(RLC, PROTOCOL_CTXT_FMT" CONFIG REQ ASN1 \n",
         PROTOCOL_CTXT_ARGS(ctxt_pP));
 
@@ -463,6 +468,9 @@ rlc_op_status_t rrc_rlc_remove_rlc   (
 
 #endif
 
+  /* for no gcc warnings */
+  (void)lcid;
+
 #ifdef Rel10
 
   if (MBMS_flagP == TRUE) {
diff --git a/openair2/RRC/LITE/L2_interface.c b/openair2/RRC/LITE/L2_interface.c
index 6a64095e92..70d0a20c08 100644
--- a/openair2/RRC/LITE/L2_interface.c
+++ b/openair2/RRC/LITE/L2_interface.c
@@ -355,6 +355,10 @@ mac_rrc_lite_data_ind(
   SRB_INFO *Srb_info;
   protocol_ctxt_t ctxt;
   sdu_size_t      sdu_size = 0;
+
+  /* for no gcc warnings */
+  (void)sdu_size;
+
   /*
   int si_window;
    */
@@ -389,7 +393,7 @@ mac_rrc_lite_data_ind(
         itti_send_msg_to_task (TASK_RRC_UE, ctxt.instance, message_p);
       }
 #else
-      decode_BCCH_DLSCH_Message(&ctxt,eNB_indexP,sduP,sdu_lenP, 0, 0);
+      decode_BCCH_DLSCH_Message(&ctxt,eNB_indexP,(uint8_t*)sduP,sdu_lenP, 0, 0);
 #endif
     }
 
@@ -634,7 +638,7 @@ rrc_lite_data_ind(
       buffer_pP,
       sdu_sizeP);
   } else {
-#warning "LG put 0 to arg4 that is eNB index"
+//#warning "LG put 0 to arg4 that is eNB index"
     rrc_ue_decode_dcch(
       ctxt_pP,
       DCCH_index,
diff --git a/openair2/RRC/LITE/rrc_UE.c b/openair2/RRC/LITE/rrc_UE.c
index 25e24a864a..ef4bbbeb1a 100644
--- a/openair2/RRC/LITE/rrc_UE.c
+++ b/openair2/RRC/LITE/rrc_UE.c
@@ -141,7 +141,9 @@ static uint8_t check_trigger_meas_event(
   Q_OffsetRange_t ofn, Q_OffsetRange_t ocn, Hysteresis_t hys,
   Q_OffsetRange_t ofs, Q_OffsetRange_t ocs, long a3_offset, TimeToTrigger_t ttt);
 
+#ifdef Rel10
 static void decode_MBSFNAreaConfiguration(module_id_t module_idP, uint8_t eNB_index, frame_t frameP,uint8_t mbsfn_sync_area);
+#endif
 
 
 
@@ -151,10 +153,13 @@ static void decode_MBSFNAreaConfiguration(module_id_t module_idP, uint8_t eNB_in
 
 
 /*------------------------------------------------------------------------------*/
+/* to avoid gcc warnings when compiling with certain options */
+#if defined(ENABLE_USE_MME) || ENABLE_RAL
 static Rrc_State_t rrc_get_state (module_id_t ue_mod_idP)
 {
   return UE_rrc_inst[ue_mod_idP].RrcState;
 }
+#endif
 
 static Rrc_Sub_State_t rrc_get_sub_state (module_id_t ue_mod_idP)
 {
@@ -1298,7 +1303,7 @@ rrc_ue_process_radioResourceConfigDedicated(
     UE_rrc_inst[ctxt_pP->module_id].sib1[eNB_index]->cellAccessRelatedInfo.cellIdentity.buf[1],
     UE_rrc_inst[ctxt_pP->module_id].sib1[eNB_index]->cellAccessRelatedInfo.cellIdentity.buf[2],
     UE_rrc_inst[ctxt_pP->module_id].sib1[eNB_index]->cellAccessRelatedInfo.cellIdentity.buf[3]);
-#    endif OAI_EMU
+#    endif /* OAI_EMU */
 #endif
 }
 
diff --git a/openair2/RRC/LITE/rrc_common.c b/openair2/RRC/LITE/rrc_common.c
index 2a37ccde00..86a3197d1e 100644
--- a/openair2/RRC/LITE/rrc_common.c
+++ b/openair2/RRC/LITE/rrc_common.c
@@ -253,6 +253,9 @@ openair_rrc_top_init(
   OAI_UECapability_t *UECap     = NULL;
   int                 CC_id;
 
+  /* for no gcc warnings */
+  (void)CC_id;
+
   LOG_D(RRC, "[OPENAIR][INIT] Init function start: NB_UE_INST=%d, NB_eNB_INST=%d\n", NB_UE_INST, NB_eNB_INST);
 
   if (NB_UE_INST > 0) {
diff --git a/openair2/RRC/LITE/rrc_eNB.c b/openair2/RRC/LITE/rrc_eNB.c
index 5d7c99a586..657b8cba02 100644
--- a/openair2/RRC/LITE/rrc_eNB.c
+++ b/openair2/RRC/LITE/rrc_eNB.c
@@ -796,6 +796,8 @@ rrc_eNB_free_UE(
   protocol_ctxt_t                     ctxt;
 #if !defined(ENABLE_USE_MME)
   module_id_t                         ue_module_id;
+  /* avoid gcc warnings */
+  (void)ue_module_id;
 #endif
   AssertFatal(enb_mod_idP < NB_eNB_INST, "eNB inst invalid (%d/%d) for UE %x!", enb_mod_idP, NB_eNB_INST, rntiP);
   ue_context_p = rrc_eNB_get_ue_context(
@@ -1176,6 +1178,8 @@ rrc_eNB_generate_defaultRRCConnectionReconfiguration(
   CellsToAddModList_t                *CellsToAddModList                = NULL;
   struct RRCConnectionReconfiguration_r8_IEs__dedicatedInfoNASList *dedicatedInfoNASList = NULL;
   DedicatedInfoNAS_t                 *dedicatedInfoNas                 = NULL;
+  /* for no gcc warnings */
+  (void)dedicatedInfoNas;
 
   C_RNTI_t                           *cba_RNTI                         = NULL;
 #ifdef CBA
diff --git a/openair2/UTIL/LOG/log.c b/openair2/UTIL/LOG/log.c
index abbdbc01ab..0ef8f99d71 100755
--- a/openair2/UTIL/LOG/log.c
+++ b/openair2/UTIL/LOG/log.c
@@ -698,6 +698,10 @@ void logRecord_mt(const char *file, const char *func, int line, int comp,
   char *log_start;
   char *log_end;
 
+  /* for no gcc warnings */
+  (void)log_start;
+  (void)log_end;
+
   c = &g_log->log_component[comp];
 
   // do not apply filtering for LOG_F
@@ -971,6 +975,10 @@ void logRecord_mt(const char *file, const char *func, int line, int comp,
    */
   char log_buffer[MAX_LOG_TOTAL];
 
+  /* for no gcc warnings */
+  (void)log_start;
+  (void)log_end;
+
   c = &g_log->log_component[comp];
 
   // do not apply filtering for LOG_F
diff --git a/openair2/UTIL/OMG/sumo.c b/openair2/UTIL/OMG/sumo.c
index f709a73e2a..4af34d0bc1 100644
--- a/openair2/UTIL/OMG/sumo.c
+++ b/openair2/UTIL/OMG/sumo.c
@@ -70,7 +70,7 @@ start_sumo_generator (omg_global_param omg_param_list)
 
   if ((pid = fork ()) == 0) {
     // Start SUMO in the child process
-    system (sumo_line);
+    if (system (sumo_line)) ;  /* this if for no gcc warnings */
     //childs addresss space
   }
 
diff --git a/targets/ARCH/COMMON/common_lib.c b/targets/ARCH/COMMON/common_lib.c
index dea02f2bba..de78cb80a6 100644
--- a/targets/ARCH/COMMON/common_lib.c
+++ b/targets/ARCH/COMMON/common_lib.c
@@ -147,7 +147,8 @@ int openair0_device_load(openair0_device *device, openair0_config_t *openair0_cf
   int rc;
   //ToDo: EXMIMO harmonization is not complete. That is the reason for this ifdef
   #ifdef EXMIMO
-  device_init(device, openair0_cfg);
+  int device_init(openair0_device *device, openair0_config_t *openair0_cfg);
+  rc = device_init(device, openair0_cfg);
   #else
   rc=load_lib(device, openair0_cfg, NULL,BBU_LOCAL_RADIO_HEAD );
   if ( rc >= 0) {       
diff --git a/targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.h b/targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.h
index dd48683ad0..c71b51550e 100644
--- a/targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.h
+++ b/targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.h
@@ -30,8 +30,10 @@
 #define TARGET_RX_POWER 50    // Target digital power for the AGC
 #define TARGET_RX_POWER_MAX 53    // Maximum digital power for AGC
 #define TARGET_RX_POWER_MIN 48    // Minimum digital power for AGC
+#ifndef min
 #define min(a,b) (((a)<(b))?(a):(b))
 #define max(a,b) (((a)>(b))?(a):(b))
+#endif
 
 void gain_control_all (unsigned int rx_power_fil_dB, unsigned int card);
 void gain_control (unsigned int rx_power_fil_dB, unsigned int ant, unsigned int card);
diff --git a/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h b/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h
index ae2ff8a36b..0abb27dee2 100644
--- a/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h
+++ b/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h
@@ -98,4 +98,6 @@ unsigned int *openair0_daq_cnt(void);
 // set the TX and RX frequencies (card 0 only for now, to retain USRP compatibility)
 int openair0_set_frequencies(openair0_device* device, openair0_config_t *openair0_cfg,int exmimo_dump_config);
 
+int openair0_set_gains(openair0_device* device, openair0_config_t *openair0_cfg);
+
 #endif
diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c
index 1887e5a8bc..5271ca5d4a 100644
--- a/targets/RT/USER/lte-softmodem.c
+++ b/targets/RT/USER/lte-softmodem.c
@@ -1638,6 +1638,11 @@ static void* eNB_thread( void* arg )
   int CC_id=0;	
   struct timespec trx_time0, trx_time1, trx_time2;
 
+  /* avoid gcc warnings */
+  (void)trx_time0;
+  (void)trx_time1;
+  (void)trx_time2;
+
 #ifdef RTAI
   RT_TASK* task = rt_task_init_schmod(nam2num("eNBmain"), 0, 0, 0, SCHED_FIFO, 0xF);
 #else
diff --git a/targets/RT/USER/lte-ue.c b/targets/RT/USER/lte-ue.c
index f64d8d36f1..6ab133e5d6 100644
--- a/targets/RT/USER/lte-ue.c
+++ b/targets/RT/USER/lte-ue.c
@@ -1401,14 +1401,14 @@ void *UE_thread(void *arg)
   RT_TASK *task;
 #endif
   // RTIME in, out, diff;
-  int slot=0,frame=0,hw_slot,last_slot,next_slot;
+  int slot=0,frame=0,hw_slot;
   // unsigned int aa;
   int delay_cnt;
   RTIME time_in;
-  int hw_slot_offset=0,rx_offset_mbox=0,mbox_target=0,mbox_current=0;
+  int /* hw_slot_offset=0, */ rx_offset_mbox=0,mbox_target=0,mbox_current=0;
   int diff2;
-  int i, ret;
-  int CC_id,card;
+  int /* i, */ ret;
+  int /* CC_id, */ card;
   volatile unsigned int *DAQ_MBOX = openair0_daq_cnt();
 
   int wait_sync_cnt = 0;
@@ -1688,7 +1688,7 @@ void *UE_thread(void *arg)
         frame++;
       }
     } else if (UE->is_synchronized == 0) { // we are not yet synchronized
-      hw_slot_offset = 0;
+      //hw_slot_offset = 0;
       first_synch = 1;
       slot = 0;
 
diff --git a/targets/SIMU/USER/channel_sim.c b/targets/SIMU/USER/channel_sim.c
index e26129bca6..adb1fb92e7 100644
--- a/targets/SIMU/USER/channel_sim.c
+++ b/targets/SIMU/USER/channel_sim.c
@@ -97,7 +97,7 @@ void do_DL_sig(double **r_re0,double **r_im0,
   double rx_pwr;
   int32_t rx_pwr2;
   uint32_t i,aa;
-  uint32_t slot_offset,slot_offset_meas;
+  uint32_t slot_offset,slot_offset_meas = 0;
 
   double min_path_loss=-200;
   uint8_t hold_channel=0;
@@ -105,7 +105,7 @@ void do_DL_sig(double **r_re0,double **r_im0,
   uint8_t nb_antennas_rx = eNB2UE[0][0][CC_id]->nb_rx; // number of rx antennas at UE
   uint8_t nb_antennas_tx = eNB2UE[0][0][CC_id]->nb_tx; // number of tx antennas at eNB
 
-  LTE_DL_FRAME_PARMS *fp;
+  //LTE_DL_FRAME_PARMS *fp;
   //  int subframe_sched = ((next_slot>>1) == 0) ? 9 : ((next_slot>>1)-1);
 
 
diff --git a/targets/SIMU/USER/event_handler.c b/targets/SIMU/USER/event_handler.c
index 4072c6bfe7..1f7ecde72e 100644
--- a/targets/SIMU/USER/event_handler.c
+++ b/targets/SIMU/USER/event_handler.c
@@ -208,15 +208,15 @@ void schedule_events()
 
   a = 5;
 
-  uint16_t *priority[11];//={1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2};
+  //uint16_t *priority[11];//={1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2};
 
 
-  int tab[NUMBER_OF_eNB_MAX + NUMBER_OF_UE_MAX];
+  //int tab[NUMBER_OF_eNB_MAX + NUMBER_OF_UE_MAX];
   Application_Config* application_config;
   application_config = malloc(sizeof(Application_Config));
 
   for(i=0; i<NUMBER_OF_eNB_MAX + NUMBER_OF_UE_MAX; i++) {
-    tab[i]=i;
+    //tab[i]=i;
     application_config->customized_traffic.aggregation_level[i]=i;
   }
 
@@ -249,7 +249,7 @@ void schedule_events()
   //schedule(READ, MAC_ET, 500, NULL, "");
   //schedule(WRITE, MAC_ET, 100, NULL, "");
   //schedule(READ, TOPO_ET,110,NULL,"",0,0);
-  double b = (double) 45;
+  //double b = (double) 45;
   //schedule(READ, APP_ET,111,NULL,"",0,0);
   //schedule(READ, SYS_ET,112,NULL,"",0,0);
   //schedule(READ, EMU_ET,113,NULL,"",-1,-1);
@@ -1844,7 +1844,6 @@ void update_emu_model(Event_t event)
   printf("\n\n\nA NEW EMU MODEL\n\n\n");
   OAI_Emulation *oai_emulation;
   oai_emulation = get_OAI_emulation();
-  int i=0;
 
   if(event.optype == READ) {
     if(event.key == NULL) {
diff --git a/targets/SIMU/USER/oaisim.c b/targets/SIMU/USER/oaisim.c
index 9e4880906d..a0dcb7baaf 100644
--- a/targets/SIMU/USER/oaisim.c
+++ b/targets/SIMU/USER/oaisim.c
@@ -530,19 +530,23 @@ l2l1_task (void *args_p)
 
   if(abstraction_flag==0) {
     for (UE_inst=0; UE_inst<NB_UE_INST; UE_inst++) {
-      sprintf(UE_stats_th_filename,"UE_stats_th%d_tx%d.txt",UE_inst,oai_emulation.info.transmission_mode);
+      /* TODO: transmission_mode is defined per CC, we set 0 for now */
+      sprintf(UE_stats_th_filename,"UE_stats_th%d_tx%d.txt",UE_inst,oai_emulation.info.transmission_mode[0]);
       UE_stats_th[UE_inst] = fopen (UE_stats_th_filename, "w");
     }
 
-    sprintf(eNB_stats_th_filename,"eNB_stats_th_tx%d.txt",oai_emulation.info.transmission_mode);
+    /* TODO: transmission_mode is defined per CC, we set 0 for now */
+    sprintf(eNB_stats_th_filename,"eNB_stats_th_tx%d.txt",oai_emulation.info.transmission_mode[0]);
     eNB_avg_thr = fopen (eNB_stats_th_filename, "w");
   } else {
     for (UE_inst=0; UE_inst<NB_UE_INST; UE_inst++) {
-      sprintf(UE_stats_th_filename,"UE_stats_abs_th%d_tx%d.txt",UE_inst,oai_emulation.info.transmission_mode);
+      /* TODO: transmission_mode is defined per CC, we set 0 for now */
+      sprintf(UE_stats_th_filename,"UE_stats_abs_th%d_tx%d.txt",UE_inst,oai_emulation.info.transmission_mode[0]);
       UE_stats_th[UE_inst] = fopen (UE_stats_th_filename, "w");
     }
 
-    sprintf(eNB_stats_th_filename,"eNB_stats_abs_th_tx%d.txt",oai_emulation.info.transmission_mode);
+    /* TODO: transmission_mode is defined per CC, we set 0 for now */
+    sprintf(eNB_stats_th_filename,"eNB_stats_abs_th_tx%d.txt",oai_emulation.info.transmission_mode[0]);
     eNB_avg_thr = fopen (eNB_stats_th_filename, "w");
   }
 
@@ -977,7 +981,7 @@ l2l1_task (void *args_p)
 
           for (UE_inst = 0; UE_inst < NB_UE_INST; UE_inst++)
             for (CC_id = 0; CC_id < MAX_NUM_CCs; CC_id++) {
-#warning figure out what to do with UE frame_parms during initial_sync
+//#warning figure out what to do with UE frame_parms during initial_sync
               do_DL_sig (r_re0,
                          r_im0,
                          r_re,
@@ -1000,7 +1004,7 @@ l2l1_task (void *args_p)
           start_meas (&ul_chan_stats);
 
           for (CC_id = 0; CC_id < MAX_NUM_CCs; CC_id++) {
-#warning figure out what to do with UE frame_parms during initial_sync
+//#warning figure out what to do with UE frame_parms during initial_sync
             do_UL_sig (r_re0, r_im0, r_re, r_im, s_re, s_im, UE2eNB,
                        enb_data, ue_data, next_slot,
                        abstraction_flag,
@@ -1034,7 +1038,7 @@ l2l1_task (void *args_p)
 
             for (UE_inst = 0; UE_inst < NB_UE_INST; UE_inst++)
               for (CC_id = 0; CC_id < MAX_NUM_CCs; CC_id++) {
-#warning  check dimensions of r_reN,r_imN for multiple CCs
+//#warning  check dimensions of r_reN,r_imN for multiple CCs
                 do_DL_sig (r_re0,
                            r_im0,
                            r_re,
@@ -1061,7 +1065,7 @@ l2l1_task (void *args_p)
             start_meas (&ul_chan_stats);
 
             for (CC_id = 0; CC_id < MAX_NUM_CCs; CC_id++) {
-#warning  check dimensions of r_reN,r_imN for multiple CCs
+//#warning  check dimensions of r_reN,r_imN for multiple CCs
               do_UL_sig (r_re0,
                          r_im0,
                          r_re,
@@ -1770,6 +1774,7 @@ print_opp_meas (void)
 
 }
 
+#if !defined(ENABLE_ITTI)
 static void *
 sigh (void *arg)
 {
@@ -1805,6 +1810,7 @@ sigh (void *arg)
 
   pthread_exit (NULL);
 }
+#endif /* !defined(ENABLE_ITTI) */
 
 void
 oai_shutdown (void)
diff --git a/targets/SIMU/USER/oaisim_functions.c b/targets/SIMU/USER/oaisim_functions.c
index 014a9e39d0..72153c3ee7 100644
--- a/targets/SIMU/USER/oaisim_functions.c
+++ b/targets/SIMU/USER/oaisim_functions.c
@@ -957,7 +957,7 @@ void init_openair1(void)
   openair_daq_vars.rx_gain_mode = DAQ_AGC_ON;
 
   openair_daq_vars.dlsch_transmission_mode = oai_emulation.info.transmission_mode[0];
-#warning "NN->FK: OAI EMU channel abstraction does not work for MCS higher than"
+//#warning "NN->FK: OAI EMU channel abstraction does not work for MCS higher than"
   openair_daq_vars.target_ue_dl_mcs = cmin(target_dl_mcs,16);
   openair_daq_vars.target_ue_ul_mcs = target_ul_mcs;
   openair_daq_vars.ue_dl_rb_alloc=0x1fff;
@@ -1049,7 +1049,7 @@ void init_openair2(void)
   module_id_t enb_id;
   module_id_t UE_id;
   int CC_id;
-#warning "eNB index is hard coded to zero"
+//#warning "eNB index is hard coded to zero"
 
   for (CC_id=0; CC_id<MAX_NUM_CCs; CC_id++)
     l2_init (&PHY_vars_eNB_g[0][CC_id]->lte_frame_parms,
@@ -1270,10 +1270,10 @@ void update_ocm()
           LOG_I(OCM,"Path loss (CCid %d) between eNB %d at (%f,%f) and UE %d at (%f,%f) is %f, angle %f\n",
                 CC_id,eNB_id,enb_data[eNB_id]->x,enb_data[eNB_id]->y,UE_id,ue_data[UE_id]->x,ue_data[UE_id]->y,
                 eNB2UE[eNB_id][UE_id][CC_id]->path_loss_dB, eNB2UE[eNB_id][UE_id][CC_id]->aoa);
-          double dx, dy, distance;
-          dx = enb_data[eNB_id]->x - ue_data[UE_id]->x;
-          dy = enb_data[eNB_id]->y - ue_data[UE_id]->y;
-          distance = sqrt(dx * dx + dy * dy);
+          //double dx, dy, distance;
+          //dx = enb_data[eNB_id]->x - ue_data[UE_id]->x;
+          //dy = enb_data[eNB_id]->y - ue_data[UE_id]->y;
+          //distance = sqrt(dx * dx + dy * dy);
           /*LOG_D(LOCALIZE, " OCM distance between eNB %d at (%f,%f) and UE %d at (%f,%f) is %f \n",
                   eNB_id, enb_data[eNB_id]->x,enb_data[eNB_id]->y,
                   UE_id, ue_data[UE_id]->x,ue_data[UE_id]->y,
@@ -1313,7 +1313,7 @@ void update_otg_eNB(module_id_t enb_module_idP, unsigned int ctime)
 
 #if defined(USER_MODE) && defined(OAI_EMU)
 
-  int rrc_state=0; 
+  //int rrc_state=0;
 
   if (oai_emulation.info.otg_enabled ==1 ) {
 
-- 
GitLab