valgrind warning when allocating large amount of memory

Abierto
#23 0 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
42/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
cpp
Área
data

Línea de trabajo

Comienza compilando y ejecutando el programa mostrado en el issue con Valgrind 3.15.0 y la versión de GCC indicada. Lee la ruta de asignación de Boost.MultiArray implicada en la construcción del array de siete dimensiones y verifica si las advertencias sobre rangos grandes indican un problema de la biblioteca; se considera terminado cuando se haya identificado la causa y se haya añadido una prueba de regresión adecuada o una resolución documentada.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

The following program:

#include "boost/multi_array.hpp"
using Emax = boost::multi_array<double, 7>; 

int main() {
    Emax emax(boost::extents[40][30][50][5][5][5][5]);
    return 0;
}

when run under valgrind gives the following warnings:

==20786== Memcheck, a memory error detector
==20786== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==20786== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
==20786== Command: ./test_arr
==20786==
==20786== Warning: set address range perms: large range [0x5171040, 0x16f8b340) (undefined)
==20786== Warning: set address range perms: large range [0x5171028, 0x16f8b358) (noaccess)
==20786==
==20786== HEAP SUMMARY:
==20786==     in use at exit: 0 bytes in 0 blocks
==20786==   total heap usage: 2 allocs, 2 frees, 300,072,704 bytes allocated
==20786==
==20786== All heap blocks were freed -- no leaks are possible
==20786==
==20786== For lists of detected and suppressed errors, rerun with: -s
==20786== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)

versions are:

gcc version 8.3.1 20190223 (Red Hat 8.3.1-2) (GCC)
valgrind-3.15.0
Lenguaje dominante
C++
Estrellas
32
Forks
39
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de boostorg/multi_array

Todos los issues de boostorg/multi_array

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.