diff --git a/test/v4l2_device/formats.cpp b/test/v4l2_device/formats.cpp
index 007e7e9487b57772..72676c9d334a69b0 100644
--- a/test/v4l2_device/formats.cpp
+++ b/test/v4l2_device/formats.cpp
@@ -18,36 +18,34 @@ using namespace libcamera;
 class Format : public V4L2DeviceTest
 {
 protected:
-	int run() override;
+	int run()
+	{
+		V4L2DeviceFormat format = {};
+
+		int ret = capture_->getFormat(&format);
+		if (ret) {
+			cerr << "Failed to get format" << endl;
+			return TestFail;
+		}
+
+		format.size = { UINT_MAX, UINT_MAX };
+		ret = capture_->setFormat(&format);
+		if (ret) {
+			cerr << "Failed to set format: image resolution is invalid: "
+			     << "(UINT_MAX x UINT_MAX) but setFormat() should not fail."
+			     << endl;
+			return TestFail;
+		}
+
+		if (format.size.width == UINT_MAX ||
+		    format.size.height == UINT_MAX) {
+			cerr << "Failed to update image format = (UINT_MAX x UINT_MAX)"
+			     << endl;
+			return TestFail;
+		}
+
+		return TestPass;
+	}
 };
 
-int Format::run()
-{
-	V4L2DeviceFormat format = {};
-
-	int ret = capture_->getFormat(&format);
-	if (ret) {
-		cerr << "Failed to get format" << endl;
-		return TestFail;
-	}
-
-	format.size = { UINT_MAX, UINT_MAX };
-	ret = capture_->setFormat(&format);
-	if (ret) {
-		cerr << "Failed to set format: image resolution is invalid: "
-		     << "(UINT_MAX x UINT_MAX) but setFormat() should not fail."
-		     << endl;
-		return TestFail;
-	}
-
-	if (format.size.width == UINT_MAX ||
-	    format.size.height == UINT_MAX) {
-		cerr << "Failed to update image format = (UINT_MAX x UINT_MAX)"
-		     << endl;
-		return TestFail;
-	}
-
-	return TestPass;
-}
-
 TEST_REGISTER(Format);
