Index: libcfa/src/common.hfa
===================================================================
--- libcfa/src/common.hfa	(revision efe420f3d0a297e0bd44a4e7abf93339a430606c)
+++ libcfa/src/common.hfa	(revision a738c68fc1929f5116c7cee21dcaaf5dc53a4f4c)
@@ -69,12 +69,12 @@
 	T min( T v1, T v2 ) { return v1 < v2 ? v1 : v2; }
 
-	forall( T, Ts... | { T min( T, T ); T min( T, Ts ); } )
-	T min( T v1, T v2, Ts vs ) { return min( min( v1, v2 ), vs ); }
+	forall( T, Ts... | { T min( T, T ); T min( T, T, Ts ); } )
+	T min( T v1, T v2, T v3, Ts vs ) { return min( min( v1, v2 ), v3, vs ); }
 
 	forall( T | { int ?>?( T, T ); } )
 	T max( T v1, T v2 ) { return v1 > v2 ? v1 : v2; }
 
-	forall( T, Ts... | { T max( T, T ); T max( T, Ts ); } )
-	T max( T v1, T v2, Ts vs ) { return max( max( v1, v2 ), vs ); }
+	forall( T, Ts... | { T max( T, T ); T max( T, T, Ts ); } )
+	T max( T v1, T v2, T v3, Ts vs ) { return max( max( v1, v2 ), v3, vs ); }
 
 	forall( T | { T min( T, T ); T max( T, T ); } )
Index: tests/.expect/minmax.txt
===================================================================
--- tests/.expect/minmax.txt	(revision efe420f3d0a297e0bd44a4e7abf93339a430606c)
+++ tests/.expect/minmax.txt	(revision a738c68fc1929f5116c7cee21dcaaf5dc53a4f4c)
@@ -20,2 +20,10 @@
 double			4. 3.1	max 4.
 long double		4. 3.1	max 4.
+
+3 arguments
+2 3 4	min 2	max 4
+4 2 3	min 2	max 4
+3 4 2	min 2	max 4
+4 arguments
+3 2 5 4	min 2	max 5
+5 3 4 2	min 2	max 5
Index: tests/minmax.cfa
===================================================================
--- tests/minmax.cfa	(revision efe420f3d0a297e0bd44a4e7abf93339a430606c)
+++ tests/minmax.cfa	(revision a738c68fc1929f5116c7cee21dcaaf5dc53a4f4c)
@@ -45,4 +45,15 @@
 	sout | "double\t\t\t"				| 4.0 | 3.1 | "\tmax" | max( 4.0, 3.1 );
 	sout | "long double\t\t"			| 4.0l | 3.1l | "\tmax" | max( 4.0l, 3.1l );
+
+	sout | nl;
+
+	sout | "3 arguments";
+	sout | 2 | 3 | 4 | "\tmin" | min(2, 3, 4) | "\tmax" | max(2, 3, 4);
+	sout | 4 | 2 | 3 | "\tmin" | min(4, 2, 3) | "\tmax" | max(4, 2, 3);
+	sout | 3 | 4 | 2 | "\tmin" | min(3, 4, 2) | "\tmax" | max(3, 4, 2);
+
+	sout | "4 arguments";
+	sout | 3 | 2 | 5 | 4 | "\tmin" | min(3, 2, 5, 4) | "\tmax" | max(3, 2, 5, 4);
+	sout | 5 | 3 | 4 | 2 | "\tmin" | min(5, 3, 4, 2) | "\tmax" | max(5, 3, 4, 2);
 } // main
 
