Bug#746196: auto-multiple-choice: FTBFS with clang instead of gcc

2014-04-30 Thread Andrei POPESCU
Control: reassign -1 auto-multiple-choice

On Du, 27 apr 14, 17:23:14, Arthur Marble wrote:
 Package: pkg-name
 Severity: minor
 Usertags: clang-ftbfs
 User: pkg-llvm-t...@lists.alioth.debian.org
 Tag: patch
 
 
 Hello,
 
 Using the rebuild infrastructure, your package fails to build with clang 
 (instead of gcc).
 
 Thanks,
 Arthur

 diff -Naur 
 auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/changelog 
 auto-multiple-choice/auto-multiple-choice-1.2.1/debian/changelog
 --- auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/changelog 
 2014-04-27 16:58:58.330365230 -0500
 +++ auto-multiple-choice/auto-multiple-choice-1.2.1/debian/changelog  
 2014-04-27 17:19:46.342386963 -0500
 @@ -1,3 +1,12 @@
 +auto-multiple-choice (1.2.1-2) unstable; urgency=low
 +
 +  * Fix FTBFS with clang
 +- Fixed the Function definition is not allowed here error in
 +  AMC-traitement-image.c: refactored code so functions can be
 +  properly defined
 +
 + -- Arthur Marble art...@info9.net  Sun, 27 Apr 2014 17:19:46 -0500
 +
  auto-multiple-choice (1.2.1-1) unstable; urgency=low
  
* New upstream release.
 diff -Naur 
 auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff
  
 auto-multiple-choice/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff
  
 --- 
 auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff
   1969-12-31 18:00:00.0 -0600
 +++ 
 auto-multiple-choice/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff
2014-04-27 17:16:54.786383976 -0500
 @@ -0,0 +1,152 @@
 +--- a/AMC-traitement-image.c
  b/AMC-traitement-image.c
 +@@ -218,6 +218,19 @@ void comp_connexes(pixel **img,int tx,in
 +   printf(CC %d %d\n,n,imax);
 + }
 + 
 ++void deplace(int i,int j, point *coins, double delta) {
 ++  coins[i].x+=delta*(coins[j].x-coins[i].x);
 ++  coins[i].y+=delta*(coins[j].y-coins[i].y);
 ++}
 ++
 ++
 ++void restreint(int *x,int *y, int tx, int ty) {
 ++  if(*x0) *x=0;
 ++  if(*y0) *y=0;
 ++  if(*x=tx) *x=tx-1;
 ++  if(*y=ty) *y=ty-1;
 ++}
 ++
 + void mesure_case(pixel **img,int tx,int ty,pixval maxval,
 +  double prop,point *coins) {
 +   int npix,npixnoir,xmin,xmax,ymin,ymax,x,y;
 +@@ -225,18 +238,6 @@ void mesure_case(pixel **img,int tx,int
 +   int i,ok;
 +   double delta;
 + 
 +-  void deplace(int i,int j) {
 +-coins[i].x+=delta*(coins[j].x-coins[i].x);
 +-coins[i].y+=delta*(coins[j].y-coins[i].y);
 +-  }
 +-
 +-  void restreint(int *x,int *y) {
 +-if(*x0) *x=0;
 +-if(*y0) *y=0;
 +-if(*x=tx) *x=tx-1;
 +-if(*y=ty) *y=ty-1;
 +-  }
 +-
 +   npix=0;
 +   npixnoir=0;
 +   xmin=tx-1;
 +@@ -246,8 +247,8 @@ void mesure_case(pixel **img,int tx,int
 + 
 +   /* reduction de la case */
 +   delta=(1-prop)/2;
 +-  deplace(0,2);deplace(2,0);
 +-  deplace(1,3);deplace(3,1);
 ++  deplace(0,2, coins, delta);deplace(2,0, coins, delta);
 ++  deplace(1,3, coins, delta);deplace(3,1, coins, delta);
 + 
 +   /* sortie des points utilises pour la mesure */
 +   for(i=0;i4;i++) {
 +@@ -268,8 +269,8 @@ void mesure_case(pixel **img,int tx,int
 +   calcule_demi_plan(coins[2],coins[3],lignes[2]);
 +   calcule_demi_plan(coins[3],coins[0],lignes[3]);
 +   
 +-  restreint(xmin,ymin);
 +-  restreint(xmax,ymax);
 ++  restreint(xmin,ymin, tx, ty);
 ++  restreint(xmax,ymax, tx, ty);
 + 
 +   for(x=xmin;x=xmax;x++) {
 + for(y=ymin;y=ymax;y++) {
 +@@ -292,47 +293,46 @@ typedef struct {
 +   int xmin,xmax,ymin,ymax;
 + } infocol;
 + 
 +-void repere_magick(pixel **img,int tx,int ty,pixval maxval) {
 +-  infocol *infos;
 +-
 +-  int ninfo,ninfo_alloc;
 +-  int i,x,y,red;
 +-  int en_couleur;
 +-
 +-  int trouve_id(int magick,int exo,int quest) {
 +-int i,ii;
 +-ii=-1;
 +-for(i=0;ininfo;i++) {
 +-  if(infos[i].magick==magick 
 ++int trouve_id(int magick,int exo,int quest,int ninfo,int 
 ninfo_alloc,infocol *infos) {
 ++  int i,ii;
 ++  ii=-1;
 ++  for(i=0;ininfo;i++) {
 ++if(infos[i].magick==magick 
 +   infos[i].exo==exo  infos[i].quest==quest) ii=i;
 +-}
 +-if(ii0) {
 +-  ii=ninfo;
 ++  }
 ++  if(ii0) {
 ++ii=ninfo;
 + 
 +-  if(ninfo_allocii+1) {
 ++if(ninfo_allocii+1) {
 + ninfo_alloc+=INFO_BLOC;
 + infos=(infocol*)realloc(infos,ninfo_alloc*sizeof(infocol));
 +-  }
 +-
 +-  infos[ii].magick=magick;
 +-  infos[ii].exo=exo;
 +-  infos[ii].quest=quest;
 +-  infos[ii].xmin=10;
 +-  infos[ii].ymin=10;
 +-  infos[ii].xmax=-1;
 +-  infos[ii].ymax=-1;
 +-  ninfo++;
 + }
 +-return(ii);
 +-  }
 + 
 +-  void ajoute(int id,int x,int y) {
 +-if(x  infos[id].xmax) infos[id].xmax=x;
 +-if(x  infos[id].xmin) infos[id].xmin=x;
 +-if(y  infos[id].ymax) infos[id].ymax=y;
 +-if(y  infos[id].ymin) infos[id].ymin=y;
 ++infos[ii].magick=magick;
 ++infos[ii].exo=exo;
 ++infos[ii].quest=quest;
 ++infos[ii].xmin=10;
 ++infos[ii].ymin=10;
 ++infos[ii].xmax=-1;
 

Bug#746196: auto-multiple-choice: FTBFS with clang instead of gcc

2014-04-27 Thread Arthur Marble
Package: pkg-name
Severity: minor
Usertags: clang-ftbfs
User: pkg-llvm-t...@lists.alioth.debian.org
Tag: patch


Hello,

Using the rebuild infrastructure, your package fails to build with clang 
(instead of gcc).

Thanks,
Arthur
diff -Naur auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/changelog auto-multiple-choice/auto-multiple-choice-1.2.1/debian/changelog
--- auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/changelog	2014-04-27 16:58:58.330365230 -0500
+++ auto-multiple-choice/auto-multiple-choice-1.2.1/debian/changelog	2014-04-27 17:19:46.342386963 -0500
@@ -1,3 +1,12 @@
+auto-multiple-choice (1.2.1-2) unstable; urgency=low
+
+  * Fix FTBFS with clang
+- Fixed the Function definition is not allowed here error in
+  AMC-traitement-image.c: refactored code so functions can be
+  properly defined
+
+ -- Arthur Marble art...@info9.net  Sun, 27 Apr 2014 17:19:46 -0500
+
 auto-multiple-choice (1.2.1-1) unstable; urgency=low
 
   * New upstream release.
diff -Naur auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff auto-multiple-choice/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff 
--- auto-multiple-choice.orig/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff	1969-12-31 18:00:00.0 -0600
+++ auto-multiple-choice/auto-multiple-choice-1.2.1/debian/patches/clang-ftbfs.diff	2014-04-27 17:16:54.786383976 -0500
@@ -0,0 +1,152 @@
+--- a/AMC-traitement-image.c
 b/AMC-traitement-image.c
+@@ -218,6 +218,19 @@ void comp_connexes(pixel **img,int tx,in
+   printf(CC %d %d\n,n,imax);
+ }
+ 
++void deplace(int i,int j, point *coins, double delta) {
++  coins[i].x+=delta*(coins[j].x-coins[i].x);
++  coins[i].y+=delta*(coins[j].y-coins[i].y);
++}
++
++
++void restreint(int *x,int *y, int tx, int ty) {
++  if(*x0) *x=0;
++  if(*y0) *y=0;
++  if(*x=tx) *x=tx-1;
++  if(*y=ty) *y=ty-1;
++}
++
+ void mesure_case(pixel **img,int tx,int ty,pixval maxval,
+ 		 double prop,point *coins) {
+   int npix,npixnoir,xmin,xmax,ymin,ymax,x,y;
+@@ -225,18 +238,6 @@ void mesure_case(pixel **img,int tx,int
+   int i,ok;
+   double delta;
+ 
+-  void deplace(int i,int j) {
+-coins[i].x+=delta*(coins[j].x-coins[i].x);
+-coins[i].y+=delta*(coins[j].y-coins[i].y);
+-  }
+-
+-  void restreint(int *x,int *y) {
+-if(*x0) *x=0;
+-if(*y0) *y=0;
+-if(*x=tx) *x=tx-1;
+-if(*y=ty) *y=ty-1;
+-  }
+-
+   npix=0;
+   npixnoir=0;
+   xmin=tx-1;
+@@ -246,8 +247,8 @@ void mesure_case(pixel **img,int tx,int
+ 
+   /* reduction de la case */
+   delta=(1-prop)/2;
+-  deplace(0,2);deplace(2,0);
+-  deplace(1,3);deplace(3,1);
++  deplace(0,2, coins, delta);deplace(2,0, coins, delta);
++  deplace(1,3, coins, delta);deplace(3,1, coins, delta);
+ 
+   /* sortie des points utilises pour la mesure */
+   for(i=0;i4;i++) {
+@@ -268,8 +269,8 @@ void mesure_case(pixel **img,int tx,int
+   calcule_demi_plan(coins[2],coins[3],lignes[2]);
+   calcule_demi_plan(coins[3],coins[0],lignes[3]);
+   
+-  restreint(xmin,ymin);
+-  restreint(xmax,ymax);
++  restreint(xmin,ymin, tx, ty);
++  restreint(xmax,ymax, tx, ty);
+ 
+   for(x=xmin;x=xmax;x++) {
+ for(y=ymin;y=ymax;y++) {
+@@ -292,47 +293,46 @@ typedef struct {
+   int xmin,xmax,ymin,ymax;
+ } infocol;
+ 
+-void repere_magick(pixel **img,int tx,int ty,pixval maxval) {
+-  infocol *infos;
+-
+-  int ninfo,ninfo_alloc;
+-  int i,x,y,red;
+-  int en_couleur;
+-
+-  int trouve_id(int magick,int exo,int quest) {
+-int i,ii;
+-ii=-1;
+-for(i=0;ininfo;i++) {
+-  if(infos[i].magick==magick 
++int trouve_id(int magick,int exo,int quest,int ninfo,int ninfo_alloc,infocol *infos) {
++  int i,ii;
++  ii=-1;
++  for(i=0;ininfo;i++) {
++if(infos[i].magick==magick 
+ 	  infos[i].exo==exo  infos[i].quest==quest) ii=i;
+-}
+-if(ii0) {
+-  ii=ninfo;
++  }
++  if(ii0) {
++ii=ninfo;
+ 
+-  if(ninfo_allocii+1) {
++if(ninfo_allocii+1) {
+ 	ninfo_alloc+=INFO_BLOC;
+ 	infos=(infocol*)realloc(infos,ninfo_alloc*sizeof(infocol));
+-  }
+-
+-  infos[ii].magick=magick;
+-  infos[ii].exo=exo;
+-  infos[ii].quest=quest;
+-  infos[ii].xmin=10;
+-  infos[ii].ymin=10;
+-  infos[ii].xmax=-1;
+-  infos[ii].ymax=-1;
+-  ninfo++;
+ }
+-return(ii);
+-  }
+ 
+-  void ajoute(int id,int x,int y) {
+-if(x  infos[id].xmax) infos[id].xmax=x;
+-if(x  infos[id].xmin) infos[id].xmin=x;
+-if(y  infos[id].ymax) infos[id].ymax=y;
+-if(y  infos[id].ymin) infos[id].ymin=y;
++infos[ii].magick=magick;
++infos[ii].exo=exo;
++infos[ii].quest=quest;
++infos[ii].xmin=10;
++infos[ii].ymin=10;
++infos[ii].xmax=-1;
++infos[ii].ymax=-1;
++ninfo++;
+   }
++  return(ii);
++}
+ 
++void ajoute(int id,int x,int y, infocol *infos) {
++  if(x  infos[id].xmax) infos[id].xmax=x;
++  if(x  infos[id].xmin) infos[id].xmin=x;
++  if(y  infos[id].ymax) infos[id].ymax=y;
++  if(y  infos[id].ymin) infos[id].ymin=y;
++}
++