Bug#680967: unblock: tcc/0.9.26~git20120612.ad5f375-5
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: freeze-exception
Greetings Release Team,
Please unblock package tcc. I've just uploaded a new version of tcc in
unstable which fix a bug of severity important (#679123) about the type
of an integer shift. I also removed the old maintainer as requested by
MIA team (#677782). If you think this extra change is too much I'd be
happy to upload a new version reverting it.
Debdiff is attached.
unblock tcc/0.9.26~git20120612.ad5f375-5
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (990, 'unstable'), (500, 'stable-updates'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.2.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -Nru tcc-0.9.26~git20120612.ad5f375/debian/changelog tcc-0.9.26~git20120612.ad5f375/debian/changelog
--- tcc-0.9.26~git20120612.ad5f375/debian/changelog 2012-06-27 15:14:30.000000000 +0200
+++ tcc-0.9.26~git20120612.ad5f375/debian/changelog 2012-07-09 15:30:35.000000000 +0200
@@ -1,3 +1,14 @@
+tcc (0.9.26~git20120612.ad5f375-5) unstable; urgency=low
+
+ * debian/patches:
+ + Correctly handle integer promotion in patch fixing incorrect shift
+ result type (Closes: #679123).
+ * debian/control:
+ + Set myself as Maintainer instead of Aurélien Gérôme as a result of him
+ being MIA (Closes: #677782).
+
+ -- Thomas Preud'homme <robotux@celest.fr> Sun, 08 Jul 2012 17:36:15 +0200
+
tcc (0.9.26~git20120612.ad5f375-4) unstable; urgency=low
* debian/patches:
diff -Nru tcc-0.9.26~git20120612.ad5f375/debian/control tcc-0.9.26~git20120612.ad5f375/debian/control
--- tcc-0.9.26~git20120612.ad5f375/debian/control 2012-06-27 15:14:30.000000000 +0200
+++ tcc-0.9.26~git20120612.ad5f375/debian/control 2012-07-09 15:30:35.000000000 +0200
@@ -1,8 +1,8 @@
Source: tcc
Section: devel
Priority: optional
-Maintainer: Aurélien GÉRÔME <ag@debian.org>
-Uploaders: Thomas Preud'homme <robotux@celest.fr>, Arthur Loiret <arthur.loiret@gmail.com>
+Maintainer: Thomas Preud'homme <robotux@celest.fr>
+Uploaders: Arthur Loiret <arthur.loiret@gmail.com>
Build-Depends: debhelper (>= 9), texi2html, texinfo, perl
Standards-Version: 3.9.3
Homepage: http://www.tinycc.org/
diff -Nru tcc-0.9.26~git20120612.ad5f375/debian/patches/0005-Incorrect-shift-result-type-with-64-bit-ABI.patch tcc-0.9.26~git20120612.ad5f375/debian/patches/0005-Incorrect-shift-result-type-with-64-bit-ABI.patch
--- tcc-0.9.26~git20120612.ad5f375/debian/patches/0005-Incorrect-shift-result-type-with-64-bit-ABI.patch 2012-06-27 15:14:30.000000000 +0200
+++ tcc-0.9.26~git20120612.ad5f375/debian/patches/0005-Incorrect-shift-result-type-with-64-bit-ABI.patch 2012-07-09 15:30:35.000000000 +0200
@@ -1,4 +1,4 @@
-From 25def4fa7488f8bcf621155d3b2725fca711b7a1 Mon Sep 17 00:00:00 2001
+From 16ab20b1893c2f5b5462f8568444609c3b49f882 Mon Sep 17 00:00:00 2001
From: Vincent Lefevre <vincent@vinc17.net>
Date: Wed, 27 Jun 2012 13:31:44 +0200
Subject: Incorrect shift result type with 64-bit ABI
@@ -19,25 +19,27 @@
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)
-Origin: upstream, http://repo.or.cz/w/tinycc.git/commit/240064c03bbc4264ff972f4dbd2d0e2f6d4222c7
+Origin: upstream, http://repo.or.cz/w/tinycc.git/commit/d27a0b35482b907357d76a9db4e0b18ec89cf979
Bug-Debian: http://bugs.debian.org/679123
-Forwarded: http://lists.nongnu.org/archive/html/tinycc-devel/2012-06/msg00038.html
-Last-Update: 2012-06-27
-Applied-Upstream: commit: 240064c03bbc4264ff972f4dbd2d0e2f6d4222c7
+Forwarded: http://lists.nongnu.org/archive/html/tinycc-devel/2012-07/msg00011.html
+Last-Update: 2012-07-06
+Applied-Upstream: commit: d27a0b35482b907357d76a9db4e0b18ec89cf979
---
- tccgen.c | 3 +++
- 1 file changed, 3 insertions(+)
+ tccgen.c | 5 +++++
+ 1 file changed, 5 insertions(+)
diff --git a/tccgen.c b/tccgen.c
-index 7295267..26a5781 100644
+index 7295267..d27bdba 100644
--- a/tccgen.c
+++ b/tccgen.c
-@@ -1678,6 +1678,9 @@ ST_FUNC void gen_op(int op)
+@@ -1678,6 +1678,11 @@ ST_FUNC void gen_op(int op)
(op < TOK_ULT || op > TOK_GT))
tcc_error("invalid operands for binary operation");
goto std_op;
+ } else if (op == TOK_SHR || op == TOK_SAR || op == TOK_SHL) {
-+ t = (bt1 == VT_LLONG ? VT_LLONG : VT_INT) | (t1 & VT_UNSIGNED);
++ t = bt1 == VT_LLONG ? VT_LLONG : VT_INT;
++ if ((t1 & (VT_BTYPE | VT_UNSIGNED)) == (t | VT_UNSIGNED))
++ t |= VT_UNSIGNED;
+ goto std_op;
} else if (bt1 == VT_LLONG || bt2 == VT_LLONG) {
/* cast to biggest op */
Reply to: