diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp
index 72f0ddd493..c2e0bcc7f6 100644
--- a/src/build_vehicle_gui.cpp
+++ b/src/build_vehicle_gui.cpp
@@ -538,7 +538,7 @@ const StringID _engine_sort_listing[][12] = {{
 }};
 
 /** Filters vehicles by cargo and engine (in case of rail vehicle). */
-static bool CDECL CargoAndEngineFilter(const GUIEngineListItem *item, const CargoID cid)
+static bool CargoAndEngineFilter(const GUIEngineListItem *item, const CargoID cid)
 {
 	if (cid == CargoFilterCriteria::CF_ANY) {
 		return true;
diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp
index 3ce405cc71..f6d02fefd5 100644
--- a/src/industry_gui.cpp
+++ b/src/industry_gui.cpp
@@ -1270,7 +1270,7 @@ typedef GUIList<const Industry *, const CargoID &, const std::pair<CargoID, Carg
  * @param cargoes The accepted and produced cargo pair to look for.
  * @return bool Whether the given cargoes accepted and produced by the industry.
  */
-static bool CDECL CargoFilter(const Industry * const *industry, const std::pair<CargoID, CargoID> &cargoes)
+static bool CargoFilter(const Industry * const *industry, const std::pair<CargoID, CargoID> &cargoes)
 {
 	auto accepted_cargo = cargoes.first;
 	auto produced_cargo = cargoes.second;
diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp
index 8310d7afed..f29319331c 100644
--- a/src/network/network_content_gui.cpp
+++ b/src/network/network_content_gui.cpp
@@ -464,7 +464,7 @@ class NetworkContentListWindow : public Window, ContentCallback {
 	}
 
 	/** Filter content by tags/name */
-	static bool CDECL TagNameFilter(const ContentInfo * const *a, ContentListFilterData &filter)
+	static bool TagNameFilter(const ContentInfo * const *a, ContentListFilterData &filter)
 	{
 		if ((*a)->state == ContentInfo::SELECTED || (*a)->state == ContentInfo::AUTOSELECTED) return true;
 
@@ -476,7 +476,7 @@ class NetworkContentListWindow : public Window, ContentCallback {
 	}
 
 	/** Filter content by type, but still show content selected for download. */
-	static bool CDECL TypeOrSelectedFilter(const ContentInfo * const *a, ContentListFilterData &filter)
+	static bool TypeOrSelectedFilter(const ContentInfo * const *a, ContentListFilterData &filter)
 	{
 		if (filter.types.none()) return true;
 		if (filter.types[(*a)->type]) return true;
diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp
index 3822242b70..e108fc2302 100644
--- a/src/network/network_gui.cpp
+++ b/src/network/network_gui.cpp
@@ -338,7 +338,7 @@ protected:
 		}
 	}
 
-	static bool CDECL NGameSearchFilter(NetworkGameList * const *item, StringFilter &sf)
+	static bool NGameSearchFilter(NetworkGameList * const *item, StringFilter &sf)
 	{
 		assert(item != nullptr);
 		assert((*item) != nullptr);
diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp
index 234ec24020..47389a152f 100644
--- a/src/newgrf_gui.cpp
+++ b/src/newgrf_gui.cpp
@@ -1458,7 +1458,7 @@ private:
 	}
 
 	/** Filter grfs by tags/name */
-	static bool CDECL TagNameFilter(const GRFConfig * const *a, StringFilter &filter)
+	static bool TagNameFilter(const GRFConfig * const *a, StringFilter &filter)
 	{
 		filter.ResetState();
 		filter.AddLine((*a)->GetName());
diff --git a/src/object_gui.cpp b/src/object_gui.cpp
index 91ed77860f..fc8daaecac 100644
--- a/src/object_gui.cpp
+++ b/src/object_gui.cpp
@@ -129,7 +129,7 @@ public:
 	}
 
 	/** Filter object classes by class name. */
-	static bool CDECL TagNameFilter(ObjectClassID const *oc, StringFilter &filter)
+	static bool TagNameFilter(ObjectClassID const *oc, StringFilter &filter)
 	{
 		ObjectClass *objclass = ObjectClass::Get(*oc);
 
diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp
index 5cdfb1fb01..7c3e2f8c3d 100644
--- a/src/rail_gui.cpp
+++ b/src/rail_gui.cpp
@@ -1095,7 +1095,7 @@ public:
 	}
 
 	/** Filter station classes by class name. */
-	static bool CDECL TagNameFilter(StationClassID const * sc, StringFilter &filter)
+	static bool TagNameFilter(StationClassID const * sc, StringFilter &filter)
 	{
 		filter.ResetState();
 		filter.AddLine(GetString(StationClass::Get(*sc)->name));
diff --git a/src/road_gui.cpp b/src/road_gui.cpp
index c2280a559f..e208aaf36b 100644
--- a/src/road_gui.cpp
+++ b/src/road_gui.cpp
@@ -1246,7 +1246,7 @@ public:
 	}
 
 	/** Filter classes by class name. */
-	static bool CDECL TagNameFilter(RoadStopClassID const *sc, StringFilter &filter)
+	static bool TagNameFilter(RoadStopClassID const *sc, StringFilter &filter)
 	{
 		filter.ResetState();
 		filter.AddLine(GetString(RoadStopClass::Get(*sc)->name));
diff --git a/src/signs_gui.cpp b/src/signs_gui.cpp
index 5448d0b283..ec2a97c0d4 100644
--- a/src/signs_gui.cpp
+++ b/src/signs_gui.cpp
@@ -93,7 +93,7 @@ struct SignList {
 	}
 
 	/** Filter sign list by sign name */
-	static bool CDECL SignNameFilter(const Sign * const *a, StringFilter &filter)
+	static bool SignNameFilter(const Sign * const *a, StringFilter &filter)
 	{
 		/* Same performance benefit as above for sorting. */
 		const std::string &a_name = (*a)->name.empty() ? SignList::default_name : (*a)->name;
@@ -104,14 +104,14 @@ struct SignList {
 	}
 
 	/** Filter sign list excluding OWNER_DEITY */
-	static bool CDECL OwnerDeityFilter(const Sign * const *a, StringFilter &)
+	static bool OwnerDeityFilter(const Sign * const *a, StringFilter &)
 	{
 		/* You should never be able to edit signs of owner DEITY */
 		return (*a)->owner != OWNER_DEITY;
 	}
 
 	/** Filter sign list by owner */
-	static bool CDECL OwnerVisibilityFilter(const Sign * const *a, StringFilter &)
+	static bool OwnerVisibilityFilter(const Sign * const *a, StringFilter &)
 	{
 		assert(!HasBit(_display_opt, DO_SHOW_COMPETITOR_SIGNS));
 		/* Hide sign if non-own signs are hidden in the viewport */
diff --git a/src/sortlist_type.h b/src/sortlist_type.h
index 8edaa91435..7cc09c7826 100644
--- a/src/sortlist_type.h
+++ b/src/sortlist_type.h
@@ -47,7 +47,7 @@ template <typename T, typename P = std::nullptr_t, typename F = const char*>
 class GUIList : public std::vector<T> {
 public:
 	using SortFunction = std::conditional_t<std::is_same_v<P, std::nullptr_t>, bool (const T&, const T&), bool (const T&, const T&, const P)>; ///< Signature of sort function.
-	typedef bool CDECL FilterFunction(const T*, F); ///< Signature of filter function.
+	using FilterFunction = bool(const T*, F); ///< Signature of filter function.
 
 protected:
 	std::span<SortFunction * const> sort_func_list;     ///< the sort criteria functions