Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler.
Number of rules (primarily dangerous function names) in C/C++ ruleset: 223
Examining data/fcl-0.5.0/include/fcl/BV/AABB.h
Examining data/fcl-0.5.0/include/fcl/BV/BV.h
Examining data/fcl-0.5.0/include/fcl/BV/BV_node.h
Examining data/fcl-0.5.0/include/fcl/BV/OBB.h
Examining data/fcl-0.5.0/include/fcl/BV/OBBRSS.h
Examining data/fcl-0.5.0/include/fcl/BV/RSS.h
Examining data/fcl-0.5.0/include/fcl/BV/kDOP.h
Examining data/fcl-0.5.0/include/fcl/BV/kIOS.h
Examining data/fcl-0.5.0/include/fcl/BVH/BVH_front.h
Examining data/fcl-0.5.0/include/fcl/BVH/BVH_internal.h
Examining data/fcl-0.5.0/include/fcl/BVH/BVH_model.h
Examining data/fcl-0.5.0/include/fcl/BVH/BVH_utility.h
Examining data/fcl-0.5.0/include/fcl/BVH/BV_fitter.h
Examining data/fcl-0.5.0/include/fcl/BVH/BV_splitter.h
Examining data/fcl-0.5.0/include/fcl/articulated_model/joint.h
Examining data/fcl-0.5.0/include/fcl/articulated_model/joint_config.h
Examining data/fcl-0.5.0/include/fcl/articulated_model/link.h
Examining data/fcl-0.5.0/include/fcl/articulated_model/model.h
Examining data/fcl-0.5.0/include/fcl/articulated_model/model_config.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_SSaP.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_SaP.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_bruteforce.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_dynamic_AABB_tree.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_dynamic_AABB_tree_array.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_interval_tree.h
Examining data/fcl-0.5.0/include/fcl/broadphase/broadphase_spatialhash.h
Examining data/fcl-0.5.0/include/fcl/broadphase/hash.h
Examining data/fcl-0.5.0/include/fcl/broadphase/hierarchy_tree.h
Examining data/fcl-0.5.0/include/fcl/broadphase/interval_tree.h
Examining data/fcl-0.5.0/include/fcl/broadphase/morton.h
Examining data/fcl-0.5.0/include/fcl/ccd/conservative_advancement.h
Examining data/fcl-0.5.0/include/fcl/ccd/interpolation/interpolation.h
Examining data/fcl-0.5.0/include/fcl/ccd/interpolation/interpolation_factory.h
Examining data/fcl-0.5.0/include/fcl/ccd/interpolation/interpolation_linear.h
Examining data/fcl-0.5.0/include/fcl/ccd/interval.h
Examining data/fcl-0.5.0/include/fcl/ccd/interval_matrix.h
Examining data/fcl-0.5.0/include/fcl/ccd/interval_vector.h
Examining data/fcl-0.5.0/include/fcl/ccd/motion.h
Examining data/fcl-0.5.0/include/fcl/ccd/motion_base.h
Examining data/fcl-0.5.0/include/fcl/ccd/simplex.h
Examining data/fcl-0.5.0/include/fcl/ccd/support.h
Examining data/fcl-0.5.0/include/fcl/ccd/taylor_matrix.h
Examining data/fcl-0.5.0/include/fcl/ccd/taylor_model.h
Examining data/fcl-0.5.0/include/fcl/ccd/taylor_vector.h
Examining data/fcl-0.5.0/include/fcl/collision.h
Examining data/fcl-0.5.0/include/fcl/collision_data.h
Examining data/fcl-0.5.0/include/fcl/collision_func_matrix.h
Examining data/fcl-0.5.0/include/fcl/collision_node.h
Examining data/fcl-0.5.0/include/fcl/collision_object.h
Examining data/fcl-0.5.0/include/fcl/continuous_collision.h
Examining data/fcl-0.5.0/include/fcl/data_types.h
Examining data/fcl-0.5.0/include/fcl/deprecated.h
Examining data/fcl-0.5.0/include/fcl/distance.h
Examining data/fcl-0.5.0/include/fcl/distance_func_matrix.h
Examining data/fcl-0.5.0/include/fcl/exception.h
Examining data/fcl-0.5.0/include/fcl/intersect.h
Examining data/fcl-0.5.0/include/fcl/learning/classifier.h
Examining data/fcl-0.5.0/include/fcl/math/constants.h
Examining data/fcl-0.5.0/include/fcl/math/math_details.h
Examining data/fcl-0.5.0/include/fcl/math/matrix_3f.h
Examining data/fcl-0.5.0/include/fcl/math/sampling.h
Examining data/fcl-0.5.0/include/fcl/math/transform.h
Examining data/fcl-0.5.0/include/fcl/math/vec_3f.h
Examining data/fcl-0.5.0/include/fcl/math/vec_nf.h
Examining data/fcl-0.5.0/include/fcl/narrowphase/gjk.h
Examining data/fcl-0.5.0/include/fcl/narrowphase/gjk_libccd.h
Examining data/fcl-0.5.0/include/fcl/narrowphase/narrowphase.h
Examining data/fcl-0.5.0/include/fcl/octree.h
Examining data/fcl-0.5.0/include/fcl/profile.h
Examining data/fcl-0.5.0/include/fcl/shape/geometric_shape_to_BVH_model.h
Examining data/fcl-0.5.0/include/fcl/shape/geometric_shapes.h
Examining data/fcl-0.5.0/include/fcl/shape/geometric_shapes_utility.h
Examining data/fcl-0.5.0/include/fcl/simd/math_simd_details.h
Examining data/fcl-0.5.0/include/fcl/simd/simd_intersect.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_node_base.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_node_bvh_shape.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_node_bvhs.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_node_octree.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_node_setup.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_node_shapes.h
Examining data/fcl-0.5.0/include/fcl/traversal/traversal_recurse.h
Examining data/fcl-0.5.0/src/BV/AABB.cpp
Examining data/fcl-0.5.0/src/BV/OBB.cpp
Examining data/fcl-0.5.0/src/BV/OBBRSS.cpp
Examining data/fcl-0.5.0/src/BV/RSS.cpp
Examining data/fcl-0.5.0/src/BV/kDOP.cpp
Examining data/fcl-0.5.0/src/BV/kIOS.cpp
Examining data/fcl-0.5.0/src/BVH/BVH_model.cpp
Examining data/fcl-0.5.0/src/BVH/BVH_utility.cpp
Examining data/fcl-0.5.0/src/BVH/BV_fitter.cpp
Examining data/fcl-0.5.0/src/BVH/BV_splitter.cpp
Examining data/fcl-0.5.0/src/articulated_model/joint.cpp
Examining data/fcl-0.5.0/src/articulated_model/joint_config.cpp
Examining data/fcl-0.5.0/src/articulated_model/link.cpp
Examining data/fcl-0.5.0/src/articulated_model/model.cpp
Examining data/fcl-0.5.0/src/articulated_model/model_config.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_SSaP.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_SaP.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_bruteforce.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_dynamic_AABB_tree.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_dynamic_AABB_tree_array.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_interval_tree.cpp
Examining data/fcl-0.5.0/src/broadphase/broadphase_spatialhash.cpp
Examining data/fcl-0.5.0/src/broadphase/hierarchy_tree.cpp
Examining data/fcl-0.5.0/src/broadphase/interval_tree.cpp
Examining data/fcl-0.5.0/src/ccd/conservative_advancement.cpp
Examining data/fcl-0.5.0/src/ccd/interpolation/interpolation.cpp
Examining data/fcl-0.5.0/src/ccd/interpolation/interpolation_factory.cpp
Examining data/fcl-0.5.0/src/ccd/interpolation/interpolation_linear.cpp
Examining data/fcl-0.5.0/src/ccd/interval.cpp
Examining data/fcl-0.5.0/src/ccd/interval_matrix.cpp
Examining data/fcl-0.5.0/src/ccd/interval_vector.cpp
Examining data/fcl-0.5.0/src/ccd/motion.cpp
Examining data/fcl-0.5.0/src/ccd/taylor_matrix.cpp
Examining data/fcl-0.5.0/src/ccd/taylor_model.cpp
Examining data/fcl-0.5.0/src/ccd/taylor_vector.cpp
Examining data/fcl-0.5.0/src/collision.cpp
Examining data/fcl-0.5.0/src/collision_data.cpp
Examining data/fcl-0.5.0/src/collision_func_matrix.cpp
Examining data/fcl-0.5.0/src/collision_node.cpp
Examining data/fcl-0.5.0/src/continuous_collision.cpp
Examining data/fcl-0.5.0/src/distance.cpp
Examining data/fcl-0.5.0/src/distance_func_matrix.cpp
Examining data/fcl-0.5.0/src/intersect.cpp
Examining data/fcl-0.5.0/src/math/sampling.cpp
Examining data/fcl-0.5.0/src/math/transform.cpp
Examining data/fcl-0.5.0/src/narrowphase/gjk.cpp
Examining data/fcl-0.5.0/src/narrowphase/gjk_libccd.cpp
Examining data/fcl-0.5.0/src/narrowphase/narrowphase.cpp
Examining data/fcl-0.5.0/src/profile.cpp
Examining data/fcl-0.5.0/src/shape/geometric_shapes.cpp
Examining data/fcl-0.5.0/src/shape/geometric_shapes_utility.cpp
Examining data/fcl-0.5.0/src/traversal/traversal_node_base.cpp
Examining data/fcl-0.5.0/src/traversal/traversal_node_bvhs.cpp
Examining data/fcl-0.5.0/src/traversal/traversal_node_setup.cpp
Examining data/fcl-0.5.0/src/traversal/traversal_recurse.cpp
Examining data/fcl-0.5.0/test/general_test.cpp
Examining data/fcl-0.5.0/test/libsvm/svm.cpp
Examining data/fcl-0.5.0/test/libsvm/svm.h
Examining data/fcl-0.5.0/test/libsvm_classifier.h
Examining data/fcl-0.5.0/test/test_fcl_broadphase.cpp
Examining data/fcl-0.5.0/test/test_fcl_bvh_models.cpp
Examining data/fcl-0.5.0/test/test_fcl_capsule_box_1.cpp
Examining data/fcl-0.5.0/test/test_fcl_capsule_box_2.cpp
Examining data/fcl-0.5.0/test/test_fcl_capsule_capsule.cpp
Examining data/fcl-0.5.0/test/test_fcl_collision.cpp
Examining data/fcl-0.5.0/test/test_fcl_distance.cpp
Examining data/fcl-0.5.0/test/test_fcl_frontlist.cpp
Examining data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp
Examining data/fcl-0.5.0/test/test_fcl_math.cpp
Examining data/fcl-0.5.0/test/test_fcl_octomap.cpp
Examining data/fcl-0.5.0/test/test_fcl_shape_mesh_consistency.cpp
Examining data/fcl-0.5.0/test/test_fcl_simple.cpp
Examining data/fcl-0.5.0/test/test_fcl_sphere_capsule.cpp
Examining data/fcl-0.5.0/test/test_fcl_utility.cpp
Examining data/fcl-0.5.0/test/test_fcl_utility.h

FINAL RESULTS:

data/fcl-0.5.0/test/libsvm/svm.cpp:54:3:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
  vsprintf(buf,fmt,ap);
data/fcl-0.5.0/include/fcl/math/math_details.h:65:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(vs, x, sizeof(T) * 3);
data/fcl-0.5.0/include/fcl/shape/geometric_shapes.h:344:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(edges, other.edges, sizeof(Edge) * num_edges);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:59:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(vertices, other.vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:67:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(tri_indices, other.tri_indices, sizeof(Triangle) * num_tris);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:75:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(prev_vertices, other.prev_vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:96:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(primitive_indices, other.primitive_indices, sizeof(unsigned int) * num_primitives);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:105:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bvs, other.bvs, sizeof(BVNode<BV>) * num_bvs);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:177:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:207:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:231:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, tri_indices, sizeof(Triangle) * num_tris);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:263:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:298:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:324:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, tri_indices, sizeof(Triangle) * num_tris);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:363:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(new_tris, tri_indices, sizeof(Triangle) * num_tris);
data/fcl-0.5.0/src/BVH/BVH_model.cpp:377:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(new_vertices, vertices, sizeof(Vec3f) * num_vertices);
data/fcl-0.5.0/src/narrowphase/narrowphase.cpp:815:16:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  if(q != ret) memcpy(ret, q, nr*2*sizeof(FCL_REAL));
data/fcl-0.5.0/src/shape/geometric_shapes.cpp:95:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(tmp, edges, num_edges * sizeof(Edge));
data/fcl-0.5.0/test/libsvm/svm.cpp:25:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy((void *)dst,(void *)src,sizeof(T)*n);
data/fcl-0.5.0/test/libsvm/svm.cpp:51:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char buf[BUFSIZ];
data/fcl-0.5.0/test/libsvm/svm.cpp:2777:14:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  FILE *fp = fopen(model_file_name,"w");
data/fcl-0.5.0/test/libsvm/svm.cpp:2892:14:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  FILE *fp = fopen(model_file_name,"rb");
data/fcl-0.5.0/test/libsvm/svm.cpp:2908:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char cmd[81];
data/fcl-0.5.0/test/test_fcl_utility.cpp:105:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  FILE* file = fopen(filename, "rb");
data/fcl-0.5.0/test/test_fcl_utility.cpp:114:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char line_buffer[2000];
data/fcl-0.5.0/test/test_fcl_utility.cpp:163:22:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
            tri[0] = atoi(data[0]) - 1;
data/fcl-0.5.0/test/test_fcl_utility.cpp:164:22:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
            tri[1] = atoi(data[1]) - 1;
data/fcl-0.5.0/test/test_fcl_utility.cpp:165:22:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
            tri[2] = atoi(data[2]) - 1;
data/fcl-0.5.0/test/test_fcl_utility.cpp:178:24:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
              tri[i] = atoi(v1) - 1;
data/fcl-0.5.0/include/fcl/BV/AABB.h:209:15:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  inline bool equal(const AABB& other) const
data/fcl-0.5.0/include/fcl/BV/AABB.h:211:17:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    return min_.equal(other.min_) && max_.equal(other.max_);
data/fcl-0.5.0/include/fcl/BV/AABB.h:211:43:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    return min_.equal(other.min_) && max_.equal(other.max_);
data/fcl-0.5.0/include/fcl/math/math_details.h:161:20:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
static inline bool equal(const Vec3Data<T>& x, const Vec3Data<T>& y, T epsilon)
data/fcl-0.5.0/include/fcl/math/vec_3f.h:135:15:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  inline bool equal(const Vec3fX& other, U epsilon = std::numeric_limits<U>::epsilon() * 100) const { return details::equal(data, other.data, epsilon); }
data/fcl-0.5.0/include/fcl/math/vec_3f.h:135:119:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  inline bool equal(const Vec3fX& other, U epsilon = std::numeric_limits<U>::epsilon() * 100) const { return details::equal(data, other.data, epsilon); }
data/fcl-0.5.0/include/fcl/math/vec_3f.h:140:12:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    return equal(other, 0);
data/fcl-0.5.0/include/fcl/simd/math_simd_details.h:408:20:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
static inline bool equal(const sse_meta_f4& x, const sse_meta_f4& y, float epsilon)
data/fcl-0.5.0/include/fcl/simd/math_simd_details.h:415:20:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
static inline bool equal(const sse_meta_d4& x, const sse_meta_d4& y, double epsilon)
data/fcl-0.5.0/src/broadphase/broadphase_SSaP.cpp:356:27:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
          if(dummy_vector.equal(obj->getAABB().max_))
data/fcl-0.5.0/src/broadphase/broadphase_SaP.cpp:292:27:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  if(updated_aabb->cached.equal(updated_aabb->obj->getAABB()))
data/fcl-0.5.0/src/broadphase/broadphase_SaP.cpp:642:19:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
          if(aabb.equal(obj->getAABB()))
data/fcl-0.5.0/src/broadphase/broadphase_dynamic_AABB_tree.cpp:723:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    if(!node->bv.equal(updated_obj->getAABB()))
data/fcl-0.5.0/src/broadphase/broadphase_dynamic_AABB_tree_array.cpp:746:35:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    if(!dtree.getNodes()[node].bv.equal(updated_obj->getAABB()))
data/fcl-0.5.0/src/broadphase/broadphase_interval_tree.cpp:459:19:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
          if(aabb.equal(obj->getAABB()))
data/fcl-0.5.0/test/libsvm/svm.cpp:2883:17:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    len = (int) strlen(line);
data/fcl-0.5.0/test/libsvm/svm.cpp:2911:5:  [1] (buffer) fscanf:
  It's unclear if the %s limit in the format string is small enough
  (CWE-120). Check that the limit is sufficiently small, or use a different
  input function.
    fscanf(fp,"%80s",cmd);
data/fcl-0.5.0/test/libsvm/svm.cpp:2915:7:  [1] (buffer) fscanf:
  It's unclear if the %s limit in the format string is small enough
  (CWE-120). Check that the limit is sufficiently small, or use a different
  input function.
      fscanf(fp,"%80s",cmd);
data/fcl-0.5.0/test/libsvm/svm.cpp:2940:7:  [1] (buffer) fscanf:
  It's unclear if the %s limit in the format string is small enough
  (CWE-120). Check that the limit is sufficiently small, or use a different
  input function.
      fscanf(fp,"%80s",cmd);
data/fcl-0.5.0/test/libsvm/svm.cpp:3012:17:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        int c = getc(fp);
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:197:37:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    bool contact_equal = actual.pos.equal(expected.pos, tol);
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:211:39:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    bool normal_equal = actual.normal.equal(expected.normal, tol);
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:214:36:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
      normal_equal = actual.normal.equal(-expected.normal, tol);
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:644:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    BOOST_CHECK(vertices[i].equal(contacts[i].pos));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:645:32:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    BOOST_CHECK(Vec3f(0, 0, 1).equal(contacts[i].normal));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:1101:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:1105:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(transform.getRotation() * Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:1142:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:1146:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(transform.getRotation() * Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:1183:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:1187:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(transform.getRotation() * Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4283:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4287:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(transform.getRotation() * Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4324:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4328:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(transform.getRotation() * Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4365:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4369:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normal.equal(transform.getRotation() * Vec3f(1, 0, 0), 1e-9));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4785:19:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(p1A.equal(p2B, tol));  // closest points should in reverse order
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4786:19:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(p2A.equal(p1B, tol));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4794:19:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(p1A.equal(p2B, tol));
data/fcl-0.5.0/test/test_fcl_geometric_shapes.cpp:4795:19:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(p2A.equal(p1B, tol));
data/fcl-0.5.0/test/test_fcl_math.cpp:62:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:64:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:66:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:70:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:72:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:74:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:78:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:80:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:82:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:86:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:88:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:90:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:93:44:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((-Vec3f32(1.0f, 2.0f, 3.0f)).equal(Vec3f32(-1.0f, -2.0f, -3.0f)));
data/fcl-0.5.0/test/test_fcl_math.cpp:97:30:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1.cross(v2)).equal(Vec3f32(-2.0f, 4.0f, -2.0f)));
data/fcl-0.5.0/test/test_fcl_math.cpp:103:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normalize(v1).equal(v1 / v1.length()));
data/fcl-0.5.0/test/test_fcl_math.cpp:117:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:119:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:121:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:125:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:127:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:129:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:133:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:135:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:137:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:141:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:143:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:145:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:148:41:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((-Vec3f64(1.0, 2.0, 3.0)).equal(Vec3f64(-1.0, -2.0, -3.0)));
data/fcl-0.5.0/test/test_fcl_math.cpp:152:30:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1.cross(v2)).equal(Vec3f64(-2.0, 4.0, -2.0)));
data/fcl-0.5.0/test/test_fcl_math.cpp:158:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normalize(v1).equal(v1 / v1.length()));
data/fcl-0.5.0/test/test_fcl_math.cpp:163:30:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1.cross(v2)).equal(Vec3f64(-2.0, 4.0, -2.0)));
data/fcl-0.5.0/test/test_fcl_math.cpp:180:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:182:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:184:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:188:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:190:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:192:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:196:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:198:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:200:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:204:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:206:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:208:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - 2.0f));
data/fcl-0.5.0/test/test_fcl_math.cpp:211:44:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((-Vec3f32(1.0f, 2.0f, 3.0f)).equal(Vec3f32(-1.0f, -2.0f, -3.0f)));
data/fcl-0.5.0/test/test_fcl_math.cpp:215:30:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1.cross(v2)).equal(Vec3f32(-2.0f, 4.0f, -2.0f)));
data/fcl-0.5.0/test/test_fcl_math.cpp:221:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normalize(v1).equal(v1 / v1.length()));
data/fcl-0.5.0/test/test_fcl_math.cpp:235:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:237:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:239:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:243:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:245:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:247:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:251:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 * 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:253:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:255:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 / 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:259:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 + 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:261:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2));
data/fcl-0.5.0/test/test_fcl_math.cpp:263:18:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(v1.equal(v2 - 2.0));
data/fcl-0.5.0/test/test_fcl_math.cpp:266:41:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((-Vec3f64(1.0, 2.0, 3.0)).equal(Vec3f64(-1.0, -2.0, -3.0)));
data/fcl-0.5.0/test/test_fcl_math.cpp:270:30:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1.cross(v2)).equal(Vec3f64(-2.0, 4.0, -2.0)));
data/fcl-0.5.0/test/test_fcl_math.cpp:276:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK(normalize(v1).equal(v1 / v1.length()));
data/fcl-0.5.0/test/test_fcl_math.cpp:281:30:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1.cross(v2)).equal(Vec3f64(-2.0, 4.0, -2.0)));
data/fcl-0.5.0/test/test_fcl_math.cpp:455:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1 + delta1).equal(v1));
data/fcl-0.5.0/test/test_fcl_math.cpp:456:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v3 + delta2).equal(v3));
data/fcl-0.5.0/test/test_fcl_math.cpp:603:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v1 + delta1).equal(v1));
data/fcl-0.5.0/test/test_fcl_math.cpp:604:29:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK((v3 + delta2).equal(v3));
data/fcl-0.5.0/test/test_fcl_sphere_capsule.cpp:127:35:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK (Vec3f (0., 0., 1.).equal(normal));
data/fcl-0.5.0/test/test_fcl_sphere_capsule.cpp:128:35:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  BOOST_CHECK (Vec3f (0., 0., 0.).equal(contact_point));
data/fcl-0.5.0/test/test_fcl_sphere_capsule.cpp:154:34:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
	BOOST_CHECK (Vec3f (0., 0., 1.).equal(normal));
data/fcl-0.5.0/test/test_fcl_sphere_capsule.cpp:155:35:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
	BOOST_CHECK (Vec3f (0., 0., 50.).equal(contact_point, solver.collision_tolerance));
data/fcl-0.5.0/test/test_fcl_utility.cpp:155:14:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
          if(strlen(data[n]))

ANALYSIS SUMMARY:

Hits = 141
Lines analyzed = 67438 in approximately 1.68 seconds (40114 lines/second)
Physical Source Lines of Code (SLOC) = 47774
Hits@level = [0]  43 [1] 112 [2]  28 [3]   0 [4]   1 [5]   0
Hits@level+ = [0+] 184 [1+] 141 [2+]  29 [3+]   1 [4+]   1 [5+]   0
Hits/KSLOC@level+ = [0+] 3.85147 [1+] 2.9514 [2+] 0.607025 [3+] 0.0209319 [4+] 0.0209319 [5+]   0
Dot directories skipped = 1 (--followdotdir overrides)
Minimum risk level = 1
Not every hit is necessarily a security vulnerability.
There may be other security vulnerabilities; review your code!
See 'Secure Programming HOWTO'
(https://dwheeler.com/secure-programs) for more information.