Titel: Automatic Repair of Timestamp Comparisons

Automated program repair has the potential to reduce the developers’ effort to fix errors in their code. In particular, modernprogramming languages, such as Java, C, and C#, represent time as integer variables that suffer from integer overflow, introducingsubtle errors that are hard to discover and repair. Recent researches on automated program repair rely on test cases to discoverfailures to correct, making them suitable only for regression errors. We propose a new strategy to automatically repair programs thatsuffer from timestamp overflows that are manifested in comparison expressions. It unifies the benefits of static analysis and automaticprogram repair avoiding dependency on testing to identify and correct defected code. Our approach performs an abstract analysis overthe time domain of a program using a Time Type System to identify the problematic comparison expressions. The repairing strategyrewrites the timestamp comparisons exploiting the binary representation of machine numbers to correct the code. We have validatedthe applicability of our approach with 20 open source Java projects. The results show that it is able to correctly repair all 246 identifiederrors. To further validate the reliability of our approach, we have proved the soundness of both, type system and repairing strategy.Furthermore, several patches for three open source projects have been acknowledged and accepted by their developers.

Publikationstyp: Beitrag in Zeitschrift (Autorenschaft)
Art der Veröffentlichung Online Publikation
Erschienen in: IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
zur Publikation
 ( IEEE; )
Erscheinungsdatum: 21.10.2019
Titel der Serie: -
Bandnummer: 14
Heftnummer: 8
Erstveröffentlichung: Ja
Version: -
Seite: -


ISSN: 1939-3520
AC-Nummer: -
Open Access
  • Online verfügbar (nicht Open Access)


Organisation Adresse
Fakultät für Technische Wissenschaften
Institut für Informatik-Systeme
Universitätsstr. 65-67
A-9020  Klagenfurt
zur Organisation
Universitätsstr. 65-67
AT - A-9020  Klagenfurt


  • 102022 - Softwareentwicklung
Forschungscluster Kein Forschungscluster ausgewählt
  • Science Citation Index Expanded (SCI Expanded)
Informationen zum Zitationsindex: Master Journal List
Peer Reviewed
  • Ja
  • Science to Science (Qualitätsindikator: I)
Klassifikationsraster der zugeordneten Organisationseinheiten:
  • Software Engineering Research Group


Organisation Adresse
Università Politecnica delle Marche (UNIVPM)
P.zza Roma 22
60121  Ancona
P.zza Roma 22
IT - 60121  Ancona

Beiträge der Publikation

Keine verknüpften Publikationen vorhanden