Immagino che potrebbe esserci qualche problema all'interno di FormatTimeStamp
funzione, ma senza codice sorgente è difficile dire qualcosa. Prova a controllare il tuo programma sotto Valgrind. Di solito questo aiuta a correggere questo tipo di bug.
Ci sono due probabili possibilità:
- un po' di codice prima della riga 798 ha corrotto il
tmpTimeStamp
locale oggetto - il valore restituito da
FormatTimeStamp()
era in qualche modo brutto.
Il _GLIBCXX_FULLY_DYNAMIC_STRING
è molto probabilmente una falsa pista e non ha nulla a che fare con il problema.
Se installi debuginfo
pacchetto per libstdc++
(Non so come si chiama su CentOS), sarai in grado di "vedere" quel codice e potresti essere in grado di dire se il lato sinistro (LHS) o il RHS dell'operatore di assegnazione ha causato il problema.
Se ciò non è possibile, dovrai eseguire il debug a livello di assembly. Entrando nel frame #2
e facendo x/4x $ebp
dovrebbe darti il precedente ebp
, indirizzo del chiamante (0x081402fc
), LHS (dovrebbe corrispondere a &tmpTimeStamp
nel frame #3
), e RHS. Vai da lì e buona fortuna!