Your message dated Mon, 03 Mar 2008 17:47:03 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#429805: fixed in abuse-sdl 1:0.7.1-1
has caused the Debian Bug report #429805,
regarding uses abs() instead of labs()
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)


-- 
429805: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=429805
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: gcc-4.1
Version: 4.1.1-21
Severity: normal


abuse-sdl-0.7.0 has a gun aiming problem due to a mis-optimisation.
attached is a canned example. 

(compile with -01 and -02 and compare the differences)


-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-4-686
Locale: LANG=en_NZ, LC_CTYPE=en_NZ (charmap=ISO-8859-1)

Versions of packages gcc-4.1 depends on:
ii  binutils               2.17cvs20070426-8 The GNU assembler, linker and bina
ii  cpp-4.1                4.1.1-21          The GNU C preprocessor
ii  gcc-4.1-base           4.1.1-21          The GNU Compiler Collection (base 
ii  libc6                  2.5-9+b1          GNU C Library: Shared libraries
ii  libgcc1                1:4.1.1-21        GCC support library
ii  libssp0                4.1.1-21          GCC stack smashing protection libr

Versions of packages gcc-4.1 recommends:
ii  libc6-dev                     2.5-9+b1   GNU C Library: Development Librari
pn  libmudflap0-dev               <none>     (no description available)

-- no debconf information
// example of GCC 4.1 optimisation bug 
// compile with -01 and -02 and compare the differences

// licence is  GPL2 - based on code taken from abuse-sdl

// gcc -o bad  example.c -O2 -lm
// gcc -o good example.c -O1 -lm


#include <stdio.h>
#include <math.h>

unsigned short atan_table[1662]={
    0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0, 
    0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0, 
    0,   0,   0,   0,   0,   0,   0,   1,   2,   3,   4,   5, 
    6,   6,   7,   8,   9,   9,  10,  11,  11,  12,  12,  13, 
   13,  14,  14,  15,  15,  16,  16,  17,  17,  18,  18,  18, 
   19,  19,  19,  20,  20,  20,  21,  21,  21,  22,  22,  22, 
   23,  23,  23,  23,  24,  24,  24,  24,  25,  25,  25,  25, 
   25,  26,  26,  26,  26,  26,  27,  27,  27,  27,  27,  28, 
   28,  28,  28,  28,  28,  28,  29,  29,  29,  29,  29,  29, 
   29,  30,  30,  30,  30,  30,  30,  30,  30,  31,  31,  31, 
   31,  31,  31,  31,  31,  31,  32,  32,  32,  32,  32,  32, 
   32,  32,  32,  32,  32,  33,  33,  33,  33,  33,  33,  33, 
   33,  33,  33,  33,  33,  33,  34,  34,  34,  34,  34,  34, 
   34,  34,  34,  34,  34,  34,  34,  34,  34,  35,  35,  35, 
   35,  35,  35,  35,  35,  35,  35,  35,  35,  35,  35,  35, 
   35,  35,  35,  35,  36,  36,  36,  36,  36,  36,  36,  36, 
   36,  36,  36,  36,  36,  36,  36,  36,  36,  36,  36,  36, 
   36,  36,  36,  37,  37,  37,  37,  37,  37,  37,  37,  37, 
   37,  37,  37,  37,  37,  37,  37,  37,  37,  37,  37,  37, 
   37,  37,  37,  37,  37,  37,  37,  37,  37,  38,  38,  38, 
   38,  38,  38,  38,  38,  38,  38,  38,  38,  38,  38,  38, 
   38,  38,  38,  38,  38,  38,  38,  38,  38,  38,  38,  38, 
   38,  38,  38,  38,  38,  38,  38,  38,  38,  38,  38,  38, 
   39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39, 
   39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39, 
   39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39, 
   39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39,  39, 
   39,  39,  39,  39,  39,  39,  39,  39,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40,  40, 
   40,  40,  40,  40,  40,  40,  40,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41,  41, 
   41,  41,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42,  42, 
   42,  42,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43,  43, 
   43,  43,  43,  44,  44,  44};

#define TBS (1662)
long lisp_atan2(long dy, long dx)
{
  if (dy==0)
  {
    if (dx>0) return 0;
    else return 180;
  } else if (dx==0)
  {
    if (dy>0) return 90;
    else return 270;
  } else
  {
    if (dx>0)
    {      
      if (dy>0)
      {
	if (abs(dx)>abs(dy))
	{
	  printf("case1:");	   
	  long a=dx*29/dy;
	  if (a>=TBS) return 0;
	  else return 45-atan_table[a];
	}
	else 
	{
	  printf("case2:");
	  long a=dy*29/dx;
	  if (a>=TBS) return 90;
	  else return 45+atan_table[a];
	}
      } else
      {
	if (abs(dx)>abs(dy))
	{
	  printf("case3:");
	  long a=dx*29/abs(dy);
	  if (a>=TBS)
	    return 0;
	  else
	    return 315+atan_table[a];
	}
	else
	{
	  printf("case4:");
	  long a=abs(dy)*29/dx;
	  if (a>=TBS)
	    return 260;
	  else
	    return 315-atan_table[a];
	}
      } 
    } else
    {
      if (dy>0)
      {
	if (abs(dx)>abs(dy))
	{
	  printf("case5:");
	  long a=-dx*29/dy;
	  if (a>=TBS)
	    return 135+45;
	  else
	    return 135+atan_table[a];
	}
	else 
	{
	  printf("case6:");
	  long a=dy*29/-dx;
	  if (a>=TBS)
	    return 135-45;
	  else
	    return 135-atan_table[a];
	}
      } else
      {
	if (abs(dx)>abs(dy))
	{
	  printf("case7:");
	  long a=-dx*29/abs(dy);
	  if (a>=TBS)
	    return 225-45;
	  else return 225-atan_table[a];
	}
	else 
	{
	  printf("case8:");
	  long a=abs(dy)*29/abs(dx);
	  if (a>=TBS)
	    return 225+45;	  
	  else return 225+atan_table[a];
	}
      } 
    }
  }  
}


int main()
{
   double angle;

   for( angle=M_PI/32; angle < M_PI * 2 ; angle+=M_PI/16)
     {
	double s=sin(angle) , c=cos(angle);
	
        long theta = lisp_atan2(s*100,c*100);
	
	printf ( " a=%4.0f theta=%4d %s\n",angle/M_PI * 180,theta, 
		 floor(0.5+angle/M_PI * 180 -theta)  ? "ERROR" : "ok");
     }
  return 0 ;
}

--- End Message ---
--- Begin Message ---
Source: abuse-sdl
Source-Version: 1:0.7.1-1

We believe that the bug you reported is fixed in the latest version of
abuse-sdl, which is due to be installed in the Debian FTP archive:

abuse-sdl_0.7.1-1.diff.gz
  to pool/main/a/abuse-sdl/abuse-sdl_0.7.1-1.diff.gz
abuse-sdl_0.7.1-1.dsc
  to pool/main/a/abuse-sdl/abuse-sdl_0.7.1-1.dsc
abuse-sdl_0.7.1.orig.tar.gz
  to pool/main/a/abuse-sdl/abuse-sdl_0.7.1.orig.tar.gz
abuse_0.7.1-1_amd64.deb
  to pool/main/a/abuse-sdl/abuse_0.7.1-1_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Sam Hocevar (Debian packages) <[EMAIL PROTECTED]> (supplier of updated 
abuse-sdl package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Mon, 03 Mar 2008 17:58:04 +0100
Source: abuse-sdl
Binary: abuse
Architecture: source amd64
Version: 1:0.7.1-1
Distribution: unstable
Urgency: low
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Changed-By: Sam Hocevar (Debian packages) <[EMAIL PROTECTED]>
Description: 
 abuse      - SDL port of the Abuse action game
Closes: 407945 429805
Changes: 
 abuse-sdl (1:0.7.1-1) unstable; urgency=low
 .
   [ Sam Hocevar ]
   * New upstream release.
   * This release fixes a portability bug that prevented from properly shooting
     on PPC (Closes: #407945, #429805).
 .
   * Drop the abuse-sdl package. This transitional package is no longer needed.
 .
   * debian/control:
     + Set policy to 3.7.3. No changes required.
     + Build-depend on debhelper (>= 5.0) because DH_COMPAT is 5.
 .
   * debian/copyright:
     + Updated copyright file.
 .
   * patches/100_rebootstrap.diff:
   * patches/200_c++_compliance.diff:
   * patches/201_datatypes.diff:
   * patches/202_disable_lisp_cache.diff:
   * patches/203_header_order.diff:
   * patches/204_spelling.diff:
   * patches/205_stack_malloc_sizeof.diff:
   * patches/206_tint_fileptr.diff:
   * patches/207_unused_vars.diff:
     + Patches were merged upstream. Remove them from the package.
 .
   [ Ansgar Burchardt ]
   * debian/control: Change XS-Vcs-* to Vcs-*
Files: 
 399aaa1c35885eb694a8ee16d47f35a7 852 games optional abuse-sdl_0.7.1-1.dsc
 439b607f291560a8f9698a2f09cffa63 719285 games optional 
abuse-sdl_0.7.1.orig.tar.gz
 5a3ee511afd03e50eaede4f602bbf940 5003 games optional abuse-sdl_0.7.1-1.diff.gz
 68b6cd4d9ccb4fd95fcfe44ee24b9be2 337456 games optional abuse_0.7.1-1_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFHzDYNfPP1rylJn2ERAkPYAJ99W9Alj7hV26BePFVs0OXtJ4IGYQCfRxU5
waFTiuDTZIxDOL4rPedNefo=
=s1sz
-----END PGP SIGNATURE-----



--- End Message ---
_______________________________________________
Pkg-games-devel mailing list
Pkg-games-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-games-devel

Reply via email to