Fix overloaded operators in bigint.

Assignment and increment/decrement operators should return values.

PiperOrigin-RevId: 254821537
Change-Id: I85d2fe7669474cb27850b7e4196edb424dd87ad1
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/56891
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/third_party/bigint/NumberlikeArray.hh b/third_party/bigint/NumberlikeArray.hh
index f791780..df58dae 100644
--- a/third_party/bigint/NumberlikeArray.hh
+++ b/third_party/bigint/NumberlikeArray.hh
@@ -70,7 +70,7 @@
 	NumberlikeArray(const NumberlikeArray<Blk> &x);
 
 	// Assignment operator
-	void operator=(const NumberlikeArray<Blk> &x);
+	NumberlikeArray<Blk>& operator=(const NumberlikeArray<Blk> &x);
 
 	// Constructor that copies from a given array of blocks
 	NumberlikeArray(const Blk *b, Index blen);
@@ -139,11 +139,11 @@
 }
 
 template <class Blk>
-void NumberlikeArray<Blk>::operator=(const NumberlikeArray<Blk> &x) {
+NumberlikeArray<Blk>& NumberlikeArray<Blk>::operator=(const NumberlikeArray<Blk> &x) {
 	/* Calls like a = a have no effect; catch them before the aliasing
 	 * causes a problem */
 	if (this == &x)
-		return;
+		return *this;
 	// Copy length
 	len = x.len;
 	// Expand array if necessary
@@ -152,6 +152,7 @@
 	Index i;
 	for (i = 0; i < len; i++)
 		blk[i] = x.blk[i];
+	return *this;
 }
 
 template <class Blk>