Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Info de debug? #68

Open
mgarciaisaia opened this issue Jul 28, 2015 · 2 comments
Open

Info de debug? #68

mgarciaisaia opened this issue Jul 28, 2015 · 2 comments

Comments

@mgarciaisaia
Copy link
Member

Podría ser útil tener opciones para entender mejor el funcionamiento de la biblioteca.

Para las colecciones, por ejemplo, funciones del estilo list_inspect para mostrar el estado interno de la lista (mostrar algo como [0xb0cacaca, 0xcafebabe, 0x51f42152], que represente la lista de punteros), y alguna opción global de la biblioteca para habilitar un modo DEBUG en el que se impriman por stderr mensajes como "Adding element 0x135262f1 to list 0xab225252" en cada operación "relevante".

Es muy experimental todo, y medio bizarro, pero podría ayudar a entender algunos errores frecuentes en el uso de la biblioteca.

Viene de acá

CC: @gastonprieto

@RaniAgus
Copy link
Contributor

RaniAgus commented Aug 4, 2021

Retomando la idea del modo DEBUG, se podría implementar usando herramientas de Valgrind como VALGRIND_PRINTF_STACKTRACE: https://blog.mozilla.org/nnethercote/2011/01/11/using-valgrind-to-get-stack-traces/

De esta forma, si uno está debugeando con Valgrind puede obtener toda la info, mientras que en una ejecución normal simplemente se ocultan.

@gastonprieto
Copy link
Contributor

Acá tengo sentimientos encontrados :P

  • Por un lado creo que debería poder verse debuggeando muchos de los problemas que suelen tener.
  • Por el otro lado creo que sirve para cuando tenes problemas complejos y la única forma es guardarte la traza y después analizarlo con tiempo.

Así que si uds creen que va a servir, denle para adelante.
Si es para algo global, tal vez con una macro se puede resolver. Sino lo de la función creo que va.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants