I'm about to make an NMU to fix this.  I started with the version in
experimental (0.99+1.0pre3-3), which fixes some problems with the build
process, and applied the fix from 0.99+1.0pre3-2.1.  I fixed a couple of
other bugs that I spotted along the way.

diff -u aspectc++-0.99+1.0pre3/debian/changelog 
aspectc++-0.99+1.0pre3/debian/changelog
--- aspectc++-0.99+1.0pre3/debian/changelog
+++ aspectc++-0.99+1.0pre3/debian/changelog
@@ -1,3 +1,19 @@
+aspectc++ (0.99+1.0pre3-3.1) unstable; urgency=low
+
+  * Non-maintainer upload
+
+  [ Sandro Tosi ]
+  * debian/rules
+    - added removal of binary not cleaned (Closes: #424106)
+
+  [ Ben Hutchings ]
+  * Fixed recursive make invocations to avoid hiding failures
+  * Added/changed #include and using directives for g++ 4.3
+    (Closes: #417489) (partly by Martin Michlmayr)
+  * Added missing parentheses in Puma::FilenameInfo::name()
+
+ -- Ben Hutchings <[EMAIL PROTECTED]>  Sun, 06 Apr 2008 01:15:28 +0100
+
 aspectc++ (0.99+1.0pre3-3) experimental; urgency=low
 
   * more cleanups in Puma/Makefile
diff -u aspectc++-0.99+1.0pre3/debian/rules aspectc++-0.99+1.0pre3/debian/rules
--- aspectc++-0.99+1.0pre3/debian/rules
+++ aspectc++-0.99+1.0pre3/debian/rules
@@ -42,6 +42,9 @@
        rm -rf AspectC++/tests/*/feature.out
        # remove generated manpages:
        rm -f ac++.1 ag++.1
+       
+       rm -rf AspectC++/bin
+
        # standard cleaning:
        dh_clean 
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/tools/orange/classes.h
+++ aspectc++-0.99+1.0pre3/Puma/tools/orange/classes.h
@@ -1,7 +1,7 @@
 # ifndef __CLASSES__
 # define __CLASSES__
 
-# include <iostream.h>
+# include <iostream>
 # include "charset.h"
 
 class ClassId
@@ -41,7 +41,7 @@
  }
 
 inline void ClassId::Print (void)
- { cout << "<" << Id << ">";
+ { std::cout << "<" << Id << ">";
  }
 
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/tools/orange/expr_names.cc
+++ aspectc++-0.99+1.0pre3/Puma/tools/orange/expr_names.cc
@@ -1,6 +1,10 @@
-#include <iostream.h>
+#include <iomanip>
+#include <iostream>
 #include "expr_names.h"
 
+using std::cout;
+using std::endl;
+
 void ExprNames::add (char* name)
  {
    if (name)
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/tools/orange/charset.cc
+++ aspectc++-0.99+1.0pre3/Puma/tools/orange/charset.cc
@@ -1,7 +1,9 @@
 # include "charset.h"
 # include "charconst.h"
 # include <stdlib.h>
-# include <iostream.h>
+# include <iostream>
+
+using std::cout;
 
 # define BIT_BLOCK(Char)   (Char / 32)
 # define BIT_VAL(Char)     (1 << (Char % 32))
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/tools/orange/classes.cc
+++ aspectc++-0.99+1.0pre3/Puma/tools/orange/classes.cc
@@ -1,10 +1,12 @@
 # include <string.h>
 # include <stdlib.h>
 # include <strings.h>
-# include <iostream.h>
+# include <iostream>
 # include "classes.h"
 # include "charset.h"
 
+using std::cout;
+
 struct MapEntry 
  { ClassId         Id;
    CharSet         Chars;
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/tools/Makefile
+++ aspectc++-0.99+1.0pre3/Puma/tools/Makefile
@@ -17,7 +17,7 @@
 define propagate
        for DIR in $(SUBDIRS); \
          do cd $$DIR; \
-         $(MAKE) -s $(MAKECMDGOALS); \
+         $(MAKE) -s $(MAKECMDGOALS) || exit 1; \
        done
 endef
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/cpp/PreprocessorParser.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/cpp/PreprocessorParser.cc
@@ -35,6 +35,7 @@
 
 #include <list>
 #include <string>
+#include <string.h>
 using namespace std;
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/infos/acinfos/ACAdviceInfo.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/infos/acinfos/ACAdviceInfo.cc
@@ -20,6 +20,7 @@
 #include "Puma/ACAspectInfo.h"
 
 #include <iostream>
+#include <string.h>
 using namespace std;
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/infos/CTypeInfo.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/infos/CTypeInfo.cc
@@ -39,6 +39,7 @@
 #include "Puma/CTree.h"
 #include <iostream>
 #include <sstream>
+#include <string.h>
 using namespace std;
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/scanner/CScanner.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/scanner/CScanner.cc
@@ -27,6 +27,8 @@
 #include "Puma/Unit.h"
 #include "Puma/CTokens.h"
 
+#include <string.h>
+
 namespace Puma {
 
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/scanner/SB_String.h
+++ aspectc++-0.99+1.0pre3/Puma/src/scanner/SB_String.h
@@ -21,6 +21,8 @@
 
 #include "Puma/ScanBuffer.h"
 
+#include <string.h>
+
 namespace Puma {
 
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/parser/cparser/CSemExpr.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/parser/cparser/CSemExpr.cc
@@ -39,9 +39,11 @@
 // the include cycle problem
 #include "Puma/CSemVisitor.h"
 
+#include <climits>
 #include <sstream>         /* istringstream */
 #include "Puma/WChar.h"    /* wcslen() */
 #include <ctype.h>         /* isdigit(); isxdigit() */
+#include <string.h>
 using namespace std;
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/parser/ccparser/CCOverloading.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/parser/ccparser/CCOverloading.cc
@@ -34,6 +34,8 @@
 #include "Puma/CCSemExpr.h"
 #include "Puma/CTree.h"
 
+#include <string.h>
+
 namespace Puma {
 
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/parser/ccparser/CCSemExpr.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/parser/ccparser/CCSemExpr.cc
@@ -42,11 +42,13 @@
 // the include cycle problem
 #include "Puma/CCSemVisitor.h"
 
+#include <climits>
 #include <string>
 #include <sstream>         /* istringstream */
 #include "Puma/WChar.h"    /* wcslen() */
 #include <ctype.h>         /* isdigit(); isxdigit() */
 #include <stdio.h>         /* sprintf() */
+#include <string.h>
 using namespace std;
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/common/FilenameInfo.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/common/FilenameInfo.cc
@@ -35,7 +35,7 @@
   // check if the name ends with '/' or '\\'
   if (n) {
     int len = strlen (n);
-    if (len >= 1 && n[len - 1] == '/' || n[len - 1] == '\\') {
+    if (len >= 1 && (n[len - 1] == '/' || n[len - 1] == '\\')) {
       // assign _name with a stripped temporary name
       char * new_name = new char[len + 1];
       strcpy (new_name, n);
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/common/OptsParser.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/common/OptsParser.cc
@@ -20,6 +20,7 @@
 #include "Puma/ParserKey.h"
 #include <string>
 //#include <iostream>
+#include <string.h>
 using namespace std;
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/common/Config.cc
+++ aspectc++-0.99+1.0pre3/Puma/src/common/Config.cc
@@ -21,6 +21,7 @@
 #include "Puma/StrCol.h"
 #include "Puma/OptsParser.h"
 #include <stdlib.h>
+#include <string.h>
 
 
 namespace Puma {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/aspects/ExtACSyntaxCC.ah
+++ aspectc++-0.99+1.0pre3/Puma/src/aspects/ExtACSyntaxCC.ah
@@ -19,6 +19,8 @@
 #ifndef __ext_ac_syntax_cc_ah__
 #define __ext_ac_syntax_cc_ah__
 
+#include <string.h>
+
 #include "ExtACSyntaxH.ah"
 
 // *************************
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/aspects/ExtAC.ah
+++ aspectc++-0.99+1.0pre3/Puma/src/aspects/ExtAC.ah
@@ -19,6 +19,8 @@
 #ifndef __ext_ac_ah__
 #define __ext_ac_ah__
 
+#include <string.h>
+
 #include "Puma/ACTree.h"
 #include "Puma/CTokens.h"
 #include "Puma/ACClassDatabase.h"
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/aspects/PragmaOnce.ah
+++ aspectc++-0.99+1.0pre3/Puma/src/aspects/PragmaOnce.ah
@@ -27,6 +27,8 @@
 using std::cout;
 using std::endl;
 
+#include <string.h>
+
 #include "Puma/Unit.h"
 #include "Puma/Token.h"
 using namespace Puma;
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/aspects/ExtACKeywords.ah
+++ aspectc++-0.99+1.0pre3/Puma/src/aspects/ExtACKeywords.ah
@@ -19,6 +19,8 @@
 #ifndef __ext_ac_keywords_ah__
 #define __ext_ac_keywords_ah__
 
+#include <string.h>
+
 #include "Puma/CProject.h"
 #include "Puma/FileUnit.h"
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/src/aspects/CMatchSyntax.ah
+++ aspectc++-0.99+1.0pre3/Puma/src/aspects/CMatchSyntax.ah
@@ -19,6 +19,8 @@
 #ifndef __CMatchSyntax_ah__
 #define __CMatchSyntax_ah__
 
+#include <string.h>
+
 #include "Puma/CWildcardTokens.h"
 #include "Puma/CTokens.h"
 #include "Puma/StrCol.h"
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/Puma/examples/Makefile
+++ aspectc++-0.99+1.0pre3/Puma/examples/Makefile
@@ -17,7 +17,7 @@
 define propagate
        for DIR in $(SUBDIRS); \
          do cd $$DIR; \
-         $(MAKE) $(MAKECMDGOALS); \
+         $(MAKE) $(MAKECMDGOALS) || exit 1; \
        done
 endef
 
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/AspectC++/RepoXMLNode.h
+++ aspectc++-0.99+1.0pre3/AspectC++/RepoXMLNode.h
@@ -22,6 +22,7 @@
 #include <libxml/tree.h>
 #include <libxml/parser.h>
 #include <string>
+#include <string.h>
 using namespace std;
 
 class RepoXMLNode {
only in patch2:
unchanged:
--- aspectc++-0.99+1.0pre3.orig/AspectC++/MatchExpr.cc
+++ aspectc++-0.99+1.0pre3/AspectC++/MatchExpr.cc
@@ -18,6 +18,8 @@
 
 #include "MatchExpr.h"
 
+#include <string.h>
+
 // parse a match expression string
 // complain about errors => result false
 bool MatchExpr::parse (ErrorStream &err, Location loc, const char *str) {
--- END ---

-- 
Ben Hutchings
Larkinson's Law: All laws are basically false.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to