diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 9e619d077c052061de2a49197c971b948404b690..6e4cab402e17811ba4099115179ceb836e9e3697 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,7 @@
+2012-10-02   Christophe Lyon  <christophe.lyon@linaro.org>
+
+	* check_GNU_style.sh: Remove temporay file upon exit.
+
 2012-09-26  Joern Rennecke  <joern.rennecke@embecosm.com>
 
 	* contrib-list.mk (LIST): Remove arm-freebsd6, arm-linux,
diff --git a/contrib/check_GNU_style.sh b/contrib/check_GNU_style.sh
index 8fb579fd1609b9ab5d21a075102458851dc107fa..b7f1c9d93787741e0f5895ddac4d76a2295bf2ac 100755
--- a/contrib/check_GNU_style.sh
+++ b/contrib/check_GNU_style.sh
@@ -37,6 +37,10 @@ test $# -eq 0 && usage
 
 tmp=check_GNU_style.tmp
 
+# Remove $tmp on exit and various signals.
+trap "rm -f $tmp" 0
+trap "rm -f $tmp ; exit 1" 1 2 3 5 9 13 15
+
 # Grep
 g (){
     msg="$1"