diff -urN ../tmp-orig/csmash-0.6.6/matrix ./matrix --- csmash-0.6.6.orig/matrix 2002-03-06 17:46:01.000000000 +0100 +++ csmash-0.6.6/matrix 2005-01-06 19:43:32.037852232 +0100 @@ -42,15 +42,6 @@ /* __BEGIN__BEGIN__ */ //__NAMESPACE_BEGIN(ese); -#if (!defined __GNUG__) || (__GNUC__ == 3) -template -void swap(T& a, T& b) -{ - T c = a; - a = b; - b = c; -} -#endif // matrix_size MUST BE larger than 1 template @@ -174,9 +165,10 @@ mx = x; } } - swap(pivot[k], pivot[piv]); int kk = pivot[k]; + pivot[k] = pivot[piv]; + pivot[piv] = kk; float_t t = m[kk][kk]; if (0 == t) { return 0; @@ -222,9 +214,10 @@ mx = x; } } - swap(pivot[k], pivot[piv]); int kk = pivot[kk]; + pivot[k] = pivot[piv]; + pivot[piv] = kk; double t = a[kk][kk]; if (0 == t) { return 0; @@ -283,7 +276,8 @@ } ik = ip[j]; if (j != k) { - swap(ip[j], ip[k]); + ip[j] = ip[k]; + ip[k] = ik; det = -det; } u = a[ik][k]; --- csmash-0.6.6/loadparts.cpp.gcc4 2005-05-10 05:02:47.000000000 -0400 +++ csmash-0.6.6/loadparts.cpp 2005-05-10 05:03:03.000000000 -0400 @@ -245,7 +245,7 @@ while ('\\' == line[l-1]) { // concat next line(s) - int bufsize = clamp(0U, sizeof(line)-l, sizeof(line)-1); + int bufsize = clamp((size_t)0U, sizeof(line)-l, sizeof(line)-1); fgets(&line[l-2], bufsize, fp); if (feof((FILE*)fp)) break; l = strlen(line);