Index: libcfa/src/vec/vec.hfa
===================================================================
--- libcfa/src/vec/vec.hfa	(revision 7c94bae6ef46919fd62728d1d2aa01ac4f1a1afc)
+++ libcfa/src/vec/vec.hfa	(revision ae3db00e3066fffbc5bc952826bdd724007d0cf9)
@@ -40,4 +40,6 @@
 // int
 int ?=?(int& n, zero_t) { return n = 0.f; }
+// unsigned int
+int ?=?(unsigned int& n, zero_t) { return n = 0.f; }
 /* float */
 void ?{}(float& a, int b) { a = b; }
Index: tests/vector/.expect/vec2_uint.txt
===================================================================
--- tests/vector/.expect/vec2_uint.txt	(revision ae3db00e3066fffbc5bc952826bdd724007d0cf9)
+++ tests/vector/.expect/vec2_uint.txt	(revision ae3db00e3066fffbc5bc952826bdd724007d0cf9)
@@ -0,0 +1,2 @@
+ctor(x,y):<4294967295,0>
+dot(v2,v3):352
Index: tests/vector/vec2_uint.cfa
===================================================================
--- tests/vector/vec2_uint.cfa	(revision ae3db00e3066fffbc5bc952826bdd724007d0cf9)
+++ tests/vector/vec2_uint.cfa	(revision ae3db00e3066fffbc5bc952826bdd724007d0cf9)
@@ -0,0 +1,12 @@
+#include "../../libcfa/src/vec/vec2.hfa"
+#include <fstream.hfa>
+#include <limits.hfa>
+
+int main(void) {
+    vec2(unsigned) v1 = {(unsigned)MAX,(unsigned)MIN};
+    sout | "ctor(x,y):" | v1;
+
+    vec2(unsigned) v2 = {3, 4};
+    vec2(unsigned) v3 = {100, 13};
+    sout | "dot(v2,v3):" | dot(v2, v3);
+}
