Fix gcc6 compile error.
diff --git a/test/array_cwise.cpp b/test/array_cwise.cpp
index 3b36328..155f77a 100644
--- a/test/array_cwise.cpp
+++ b/test/array_cwise.cpp
@@ -1098,12 +1098,16 @@
   }
 };
 
+namespace Eigen {
+namespace internal {
 template <int N, typename Scalar>
-struct internal::functor_traits<logical_left_shift_op<N, Scalar>> : shift_imm_traits<Scalar> {};
+struct functor_traits<logical_left_shift_op<N, Scalar>> : shift_imm_traits<Scalar> {};
 template <int N, typename Scalar>
-struct internal::functor_traits<logical_right_shift_op<N, Scalar>> : shift_imm_traits<Scalar> {};
+struct functor_traits<logical_right_shift_op<N, Scalar>> : shift_imm_traits<Scalar> {};
 template <int N, typename Scalar>
-struct internal::functor_traits<arithmetic_right_shift_op<N, Scalar>> : shift_imm_traits<Scalar> {};
+struct functor_traits<arithmetic_right_shift_op<N, Scalar>> : shift_imm_traits<Scalar> {};
+}  // namespace internal
+}  // namespace Eigen
 
 template <typename ArrayType>
 struct shift_test_impl {