gnuradio-core: trial "fix" for QA failure with debian gcc 4.4.4
[debian/gnuradio] / gnuradio-core / src / lib / filter / qa_gr_fir_fcc.cc
index 0706b585d9f15aac856325f777a739be1cd4c874..25083bb2b03ad4ec5dedcd047b74b968d08841aa 100644 (file)
@@ -1,12 +1,12 @@
 /* -*- c++ -*- */
 /*
- * Copyright 2002 Free Software Foundation, Inc.
+ * Copyright 2002,2010 Free Software Foundation, Inc.
  * 
  * This file is part of GNU Radio
  * 
  * GNU Radio is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
+ * the Free Software Foundation; either version 3, or (at your option)
  * any later version.
  * 
  * GNU Radio is distributed in the hope that it will be useful,
@@ -16,8 +16,8 @@
  * 
  * You should have received a copy of the GNU General Public License
  * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
  */
 
 /*
@@ -46,6 +46,7 @@ typedef       gr_complex      acc_type;
 #include <gr_types.h>
 #include <cppunit/TestAssert.h>
 #include <random.h>
+#include <string.h>
 
 using std::vector;
 
@@ -107,7 +108,10 @@ test_random_io (fir_maker_t maker)
   const int    OUTPUT_LEN      = 17;
   const int    INPUT_LEN       = MAX_TAPS + OUTPUT_LEN;
 
-  i_type       input[INPUT_LEN];
+  i_type        input_raw[INPUT_LEN + 4*16/sizeof(i_type)];
+  memset(input_raw, 0, sizeof(input_raw));
+  i_type       *input = &input_raw[2*16/sizeof(i_type)];
+
   o_type       expected_output[OUTPUT_LEN];
   o_type       actual_output[OUTPUT_LEN];
   tap_type     taps[MAX_TAPS];
@@ -146,9 +150,9 @@ test_random_io (fir_maker_t maker)
       // arithmetic.
       
       for (int o = 0; o < ol; o++){
-       ASSERT_COMPLEXES_EQUAL (expected_output[o],
-                               actual_output[o],
-                               abs (expected_output[o]) * ERR_DELTA);
+       CPPUNIT_ASSERT_COMPLEXES_EQUAL(expected_output[o],
+                                      actual_output[o],
+                                      abs (expected_output[o]) * ERR_DELTA);
       }
 
       delete f1;