From 7bfd5e521edc99afcb0f3fd7bdfe4cb178656b89 Mon Sep 17 00:00:00 2001
From: David Anderson <dvander@alliedmods.net>
Date: Fri, 3 Nov 2023 20:30:38 -0700
Subject: [PATCH] Update SourcePawn.

This updates float.inc and smn_float.cpp to compensate for alias
removal.
---
 core/logic/smn_float.cpp  |  5 +++++
 plugins/include/float.inc | 34 +++++++++++++++++-----------------
 sourcepawn                |  2 +-
 3 files changed, 23 insertions(+), 18 deletions(-)

diff --git a/core/logic/smn_float.cpp b/core/logic/smn_float.cpp
index 7c5e0642..1d01a728 100644
--- a/core/logic/smn_float.cpp
+++ b/core/logic/smn_float.cpp
@@ -370,6 +370,11 @@ REGISTER_NATIVES(floatnatives)
 	{"RoundToCeil",		sm_RoundToCeil},
 	{"RoundToFloor",	sm_RoundToFloor},
 	{"RoundToNearest",	sm_RoundToNearest},
+	{"__FLOAT_MUL__",	sm_FloatMul},
+	{"__FLOAT_DIV__",	sm_FloatDiv},
+	{"__FLOAT_ADD__",	sm_FloatAdd},
+	{"__FLOAT_SUB__",	sm_FloatSub},
+	{"__FLOAT_MOD__",	sm_FloatMod},
 	{"__FLOAT_GT__",	sm_FloatGt},
 	{"__FLOAT_GE__",	sm_FloatGe},
 	{"__FLOAT_LT__",	sm_FloatLt},
diff --git a/plugins/include/float.inc b/plugins/include/float.inc
index 4a769767..8d40df7f 100644
--- a/plugins/include/float.inc
+++ b/plugins/include/float.inc
@@ -277,11 +277,11 @@ stock int RoundFloat(float value)
 #if !defined __sourcepawn2__
 
 // Internal aliases for backwards compatibility.
-native float __FLOAT_MUL__(float a, float b) = FloatMul;
-native float __FLOAT_DIV__(float a, float b) = FloatDiv;
-native float __FLOAT_ADD__(float a, float b) = FloatAdd;
-native float __FLOAT_SUB__(float a, float b) = FloatSub;
-native float __FLOAT_MOD__(float a, float b) = FloatMod;
+native float __FLOAT_MUL__(float a, float b);
+native float __FLOAT_DIV__(float a, float b);
+native float __FLOAT_ADD__(float a, float b);
+native float __FLOAT_SUB__(float a, float b);
+native float __FLOAT_MOD__(float a, float b);
 
 native bool __FLOAT_GT__(float a, float b);
 native bool __FLOAT_GE__(float a, float b);
@@ -291,18 +291,18 @@ native bool __FLOAT_EQ__(float a, float b);
 native bool __FLOAT_NE__(float a, float b);
 native bool __FLOAT_NOT__(float a);
 
-native float operator*(float oper1, float oper2) = FloatMul;
-native float operator/(float oper1, float oper2) = FloatDiv;
-native float operator+(float oper1, float oper2) = FloatAdd;
-native float operator-(float oper1, float oper2) = FloatSub;
-native float operator%(float oper1, float oper2) = FloatMod;
-native bool operator!(float oper1) = __FLOAT_NOT__;
-native bool operator>(float oper1, float oper2) = __FLOAT_GT__;
-native bool operator>=(float oper1, float oper2) = __FLOAT_GE__;
-native bool operator<(float oper1, float oper2) = __FLOAT_LT__;
-native bool operator<=(float oper1, float oper2) = __FLOAT_LE__;
-native bool operator!=(float oper1, float oper2) = __FLOAT_NE__;
-native bool operator==(float oper1, float oper2) = __FLOAT_EQ__;
+stock float operator*(float oper1, float oper2) { return __FLOAT_MUL__(oper1, oper2); }
+stock float operator/(float oper1, float oper2) { return __FLOAT_DIV__(oper1, oper2); }
+stock float operator+(float oper1, float oper2) { return __FLOAT_ADD__(oper1, oper2); }
+stock float operator-(float oper1, float oper2) { return __FLOAT_SUB__(oper1, oper2); }
+stock float operator%(float oper1, float oper2) { return __FLOAT_MOD__(oper1, oper2); }
+stock bool operator!(float oper1) { return __FLOAT_NOT__(oper1); }
+stock bool operator>(float oper1, float oper2) { return __FLOAT_GT__(oper1, oper2); }
+stock bool operator>=(float oper1, float oper2) { return __FLOAT_GE__(oper1, oper2); }
+stock bool operator<(float oper1, float oper2) { return __FLOAT_LT__(oper1, oper2); }
+stock bool operator<=(float oper1, float oper2) { return __FLOAT_LE__(oper1, oper2); }
+stock bool operator!=(float oper1, float oper2) { return __FLOAT_NE__(oper1, oper2); }
+stock bool operator==(float oper1, float oper2) { return __FLOAT_EQ__(oper1, oper2); }
 
 stock float operator++(float oper)
 {
diff --git a/sourcepawn b/sourcepawn
index e8bbc9a3..032a9ac0 160000
--- a/sourcepawn
+++ b/sourcepawn
@@ -1 +1 @@
-Subproject commit e8bbc9a324a762a1b8f53199b310346d9602eb43
+Subproject commit 032a9ac082a47b6a8c0231044ab295ae9d1b07b6