Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 8a58347

Browse files
committed
Fix -Wcast-function-type warnings on Windows/MinGW
After de8feb1, some warnings remained that were only visible when using GCC on Windows. Fix those as well. Note that the ecpg test source files don't use the full pg_config.h, so we can't use pg_funcptr_t there but have to do it the long way.
1 parent 19ae53c commit 8a58347

File tree

11 files changed

+22
-22
lines changed

11 files changed

+22
-22
lines changed

src/backend/libpq/auth.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -1521,7 +1521,7 @@ pg_SSPI_recvauth(Port *port)
15211521
(errmsg("could not load library \"%s\": error code %lu",
15221522
"SECUR32.DLL", GetLastError())));
15231523

1524-
_QuerySecurityContextToken = (QUERY_SECURITY_CONTEXT_TOKEN_FN)
1524+
_QuerySecurityContextToken = (QUERY_SECURITY_CONTEXT_TOKEN_FN) (pg_funcptr_t)
15251525
GetProcAddress(secur32, "QuerySecurityContextToken");
15261526
if (_QuerySecurityContextToken == NULL)
15271527
{
@@ -2522,7 +2522,7 @@ InitializeLDAPConnection(Port *port, LDAP **ldap)
25222522
ldap_unbind(*ldap);
25232523
return STATUS_ERROR;
25242524
}
2525-
_ldap_start_tls_sA = (__ldap_start_tls_sA) GetProcAddress(ldaphandle, "ldap_start_tls_sA");
2525+
_ldap_start_tls_sA = (__ldap_start_tls_sA) (pg_funcptr_t) GetProcAddress(ldaphandle, "ldap_start_tls_sA");
25262526
if (_ldap_start_tls_sA == NULL)
25272527
{
25282528
ereport(LOG,

src/backend/port/win32/crashdump.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ crashDumpHandler(struct _EXCEPTION_POINTERS *pExceptionInfo)
122122
return EXCEPTION_CONTINUE_SEARCH;
123123
}
124124

125-
pDump = (MINIDUMPWRITEDUMP) GetProcAddress(hDll, "MiniDumpWriteDump");
125+
pDump = (MINIDUMPWRITEDUMP) (pg_funcptr_t) GetProcAddress(hDll, "MiniDumpWriteDump");
126126

127127
if (pDump == NULL)
128128
{

src/bin/pg_ctl/pg_ctl.c

+6-6
Original file line numberDiff line numberDiff line change
@@ -1778,7 +1778,7 @@ CreateRestrictedProcess(char *cmd, PROCESS_INFORMATION *processInfo, bool as_ser
17781778
Advapi32Handle = LoadLibrary("ADVAPI32.DLL");
17791779
if (Advapi32Handle != NULL)
17801780
{
1781-
_CreateRestrictedToken = (__CreateRestrictedToken) GetProcAddress(Advapi32Handle, "CreateRestrictedToken");
1781+
_CreateRestrictedToken = (__CreateRestrictedToken) (pg_funcptr_t) GetProcAddress(Advapi32Handle, "CreateRestrictedToken");
17821782
}
17831783

17841784
if (_CreateRestrictedToken == NULL)
@@ -1852,11 +1852,11 @@ CreateRestrictedProcess(char *cmd, PROCESS_INFORMATION *processInfo, bool as_ser
18521852
Kernel32Handle = LoadLibrary("KERNEL32.DLL");
18531853
if (Kernel32Handle != NULL)
18541854
{
1855-
_IsProcessInJob = (__IsProcessInJob) GetProcAddress(Kernel32Handle, "IsProcessInJob");
1856-
_CreateJobObject = (__CreateJobObject) GetProcAddress(Kernel32Handle, "CreateJobObjectA");
1857-
_SetInformationJobObject = (__SetInformationJobObject) GetProcAddress(Kernel32Handle, "SetInformationJobObject");
1858-
_AssignProcessToJobObject = (__AssignProcessToJobObject) GetProcAddress(Kernel32Handle, "AssignProcessToJobObject");
1859-
_QueryInformationJobObject = (__QueryInformationJobObject) GetProcAddress(Kernel32Handle, "QueryInformationJobObject");
1855+
_IsProcessInJob = (__IsProcessInJob) (pg_funcptr_t) GetProcAddress(Kernel32Handle, "IsProcessInJob");
1856+
_CreateJobObject = (__CreateJobObject) (pg_funcptr_t) GetProcAddress(Kernel32Handle, "CreateJobObjectA");
1857+
_SetInformationJobObject = (__SetInformationJobObject) (pg_funcptr_t) GetProcAddress(Kernel32Handle, "SetInformationJobObject");
1858+
_AssignProcessToJobObject = (__AssignProcessToJobObject) (pg_funcptr_t) GetProcAddress(Kernel32Handle, "AssignProcessToJobObject");
1859+
_QueryInformationJobObject = (__QueryInformationJobObject) (pg_funcptr_t) GetProcAddress(Kernel32Handle, "QueryInformationJobObject");
18601860
}
18611861

18621862
/* Verify that we found all functions */

src/common/restricted_token.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ CreateRestrictedProcess(char *cmd, PROCESS_INFORMATION *processInfo)
6666
return 0;
6767
}
6868

69-
_CreateRestrictedToken = (__CreateRestrictedToken) GetProcAddress(Advapi32Handle, "CreateRestrictedToken");
69+
_CreateRestrictedToken = (__CreateRestrictedToken) (pg_funcptr_t) GetProcAddress(Advapi32Handle, "CreateRestrictedToken");
7070

7171
if (_CreateRestrictedToken == NULL)
7272
{

src/interfaces/ecpg/test/expected/thread-thread.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ int main()
9999
#ifndef WIN32
100100
pthread_create(&threads[n], NULL, test_thread, (void *) (n + 1));
101101
#else
102-
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)test_thread, (void *) (n + 1), 0, NULL);
102+
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) (void (*) (void)) test_thread, (void *) (n + 1), 0, NULL);
103103
#endif
104104
}
105105

src/interfaces/ecpg/test/expected/thread-thread_implicit.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ int main()
9999
#ifndef WIN32
100100
pthread_create(&threads[n], NULL, test_thread, (void *) (n + 1));
101101
#else
102-
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) test_thread, (void *) (n+1), 0, NULL);
102+
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) (void (*) (void)) test_thread, (void *) (n+1), 0, NULL);
103103
#endif
104104
}
105105

src/interfaces/ecpg/test/thread/thread.pgc

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ int main()
6868
#ifndef WIN32
6969
pthread_create(&threads[n], NULL, test_thread, (void *) (n + 1));
7070
#else
71-
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)test_thread, (void *) (n + 1), 0, NULL);
71+
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) (void (*) (void)) test_thread, (void *) (n + 1), 0, NULL);
7272
#endif
7373
}
7474

src/interfaces/ecpg/test/thread/thread_implicit.pgc

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ int main()
6868
#ifndef WIN32
6969
pthread_create(&threads[n], NULL, test_thread, (void *) (n + 1));
7070
#else
71-
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) test_thread, (void *) (n+1), 0, NULL);
71+
threads[n] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) (void (*) (void)) test_thread, (void *) (n+1), 0, NULL);
7272
#endif
7373
}
7474

src/port/getaddrinfo.c

+6-6
Original file line numberDiff line numberDiff line change
@@ -79,12 +79,12 @@ haveNativeWindowsIPv6routines(void)
7979
{
8080
/* We found a dll, so now get the addresses of the routines */
8181

82-
getaddrinfo_ptr = (getaddrinfo_ptr_t) GetProcAddress(hLibrary,
83-
"getaddrinfo");
84-
freeaddrinfo_ptr = (freeaddrinfo_ptr_t) GetProcAddress(hLibrary,
85-
"freeaddrinfo");
86-
getnameinfo_ptr = (getnameinfo_ptr_t) GetProcAddress(hLibrary,
87-
"getnameinfo");
82+
getaddrinfo_ptr = (getaddrinfo_ptr_t) (pg_funcptr_t) GetProcAddress(hLibrary,
83+
"getaddrinfo");
84+
freeaddrinfo_ptr = (freeaddrinfo_ptr_t) (pg_funcptr_t) GetProcAddress(hLibrary,
85+
"freeaddrinfo");
86+
getnameinfo_ptr = (getnameinfo_ptr_t) (pg_funcptr_t) GetProcAddress(hLibrary,
87+
"getnameinfo");
8888

8989
/*
9090
* If any one of the routines is missing, let's play it safe and

src/port/win32env.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ pgwin32_putenv(const char *envval)
9595
{
9696
PUTENVPROC putenvFunc;
9797

98-
putenvFunc = (PUTENVPROC) GetProcAddress(hmodule, "_putenv");
98+
putenvFunc = (PUTENVPROC) (pg_funcptr_t) GetProcAddress(hmodule, "_putenv");
9999
if (putenvFunc)
100100
putenvFunc(envval);
101101
FreeLibrary(hmodule);

src/port/win32stat.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ _pgstat64(const char *name, struct stat *buf)
227227
return -1;
228228
}
229229

230-
_NtQueryInformationFile = (PFN_NTQUERYINFORMATIONFILE)
230+
_NtQueryInformationFile = (PFN_NTQUERYINFORMATIONFILE) (pg_funcptr_t)
231231
GetProcAddress(ntdll, "NtQueryInformationFile");
232232
if (_NtQueryInformationFile == NULL)
233233
{

0 commit comments

Comments
 (0)