diff --git a/io.hpp b/io.hpp
index 4cdc048..7918134 100644
--- a/io.hpp
+++ b/io.hpp
@@ -489,6 +489,8 @@ struct readCaller {
template
class VirtPort {
public:
+ static_assert(sizeof...(pins) <= 8, "A virtual port cannot have more than 8 pins");
+
// VirtPort objects cannot be moved or copied
VirtPort(const VirtPort &) = delete;
VirtPort(VirtPort &&) = delete;