Follow-up Comment #1, bug #52181 (project avr-libc):

This is not an avr-libc problem.  The stdio routines like prinf are fully
synchronous, and there is no buffering.

Hence any buffering must emerge from the applicaton's stream implementation,
i.e. from the callbacks you are providing with FDEV_SETUP_STREAM or by similar
means.

One fix is to provide a destructor for your static buffering object.  abort
will call _exit which will run all the static destructors and all the
functions registered with atexit.

Beside thar, gnu tools allow to provide own static destructors even for C, and
avr tool allow to override abort, _exit and exit and to run own shutdown code
located in dedicated sections .fini9 ... .fini0.

    _______________________________________________________

Reply to this item at:

  <http://savannah.nongnu.org/bugs/?52181>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.nongnu.org/


_______________________________________________
AVR-libc-dev mailing list
AVR-libc-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/avr-libc-dev

Reply via email to