re PR ada/52123 (gcc bootstrap with ada fails on mingw target)
2013-02-14 Rainer Emrich <rainer@emrich-ebersheim.de> PR target/52123 * adaint.c (__gnat_check_OWNER_ACL): Cast from pointer via SECURITY_DESCRIPTOR *. (__gnat_set_OWNER_ACL): Cast from DWORD to ACCESS_MODE. (__gnat_portable_spawn): Fix cast to char* const*. (add_handle): Cast from pointer via void **. (add_handle): Cast from pointer via int *. (__gnat_locate_exec_on_path): Cast from pointer via TCHAR *. (__gnat_locate_exec_on_path): Cast from pointer via char *. * initialize.c (append_arg): Cast from pointer via LPWSTR. (__gnat_initialize): Cast from pointer via LPWSTR. * seh_init.c (__gnat_SEH_error_handler): Cast from pointer via FARPROC. * tracebak.c: Cast from pointer via FARPROC. From-SVN: r196046
This commit is contained in:
parent
99dd6ee0bc
commit
be409c7c06
|
@ -1,3 +1,20 @@
|
|||
2013-02-14 Rainer Emrich <rainer@emrich-ebersheim.de>
|
||||
|
||||
Back-port from mainline.
|
||||
PR target/52123
|
||||
* adaint.c (__gnat_check_OWNER_ACL): Cast from pointer via
|
||||
SECURITY_DESCRIPTOR *.
|
||||
(__gnat_set_OWNER_ACL): Cast from DWORD to ACCESS_MODE.
|
||||
(__gnat_portable_spawn): Fix cast to char* const*.
|
||||
(add_handle): Cast from pointer via void **.
|
||||
(add_handle): Cast from pointer via int *.
|
||||
(__gnat_locate_exec_on_path): Cast from pointer via TCHAR *.
|
||||
(__gnat_locate_exec_on_path): Cast from pointer via char *.
|
||||
* initialize.c (append_arg): Cast from pointer via LPWSTR.
|
||||
(__gnat_initialize): Cast from pointer via LPWSTR.
|
||||
* seh_init.c (__gnat_SEH_error_handler): Cast from pointer via FARPROC.
|
||||
* tracebak.c: Cast from pointer via FARPROC.
|
||||
|
||||
2013-02-07 Simon Wright <simon@pushface.org>
|
||||
|
||||
PR target/50678
|
||||
|
|
|
@ -1982,7 +1982,7 @@ __gnat_check_OWNER_ACL
|
|||
GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
|
||||
NULL, 0, &nLength);
|
||||
|
||||
if ((pSD = (PSECURITY_DESCRIPTOR) HeapAlloc
|
||||
if ((pSD = (SECURITY_DESCRIPTOR *) HeapAlloc
|
||||
(GetProcessHeap (), HEAP_ZERO_MEMORY, nLength)) == NULL)
|
||||
return 0;
|
||||
|
||||
|
@ -2059,7 +2059,7 @@ __gnat_set_OWNER_ACL
|
|||
return;
|
||||
|
||||
BuildExplicitAccessWithName
|
||||
(&ea, username, AccessPermissions, AccessMode, NO_INHERITANCE);
|
||||
(&ea, username, AccessPermissions, (ACCESS_MODE) AccessMode, NO_INHERITANCE);
|
||||
|
||||
if (AccessMode == SET_ACCESS)
|
||||
{
|
||||
|
@ -2384,7 +2384,7 @@ __gnat_portable_spawn (char *args[])
|
|||
strcat (args[0], args_0);
|
||||
strcat (args[0], "\"");
|
||||
|
||||
status = spawnvp (P_WAIT, args_0, (const char* const*)args);
|
||||
status = spawnvp (P_WAIT, args_0, (char* const*)args);
|
||||
|
||||
/* restore previous value */
|
||||
free (args[0]);
|
||||
|
@ -2544,9 +2544,9 @@ add_handle (HANDLE h, int pid)
|
|||
{
|
||||
plist_max_length += 1000;
|
||||
HANDLES_LIST =
|
||||
xrealloc (HANDLES_LIST, sizeof (HANDLE) * plist_max_length);
|
||||
(void **) xrealloc (HANDLES_LIST, sizeof (HANDLE) * plist_max_length);
|
||||
PID_LIST =
|
||||
xrealloc (PID_LIST, sizeof (int) * plist_max_length);
|
||||
(int *) xrealloc (PID_LIST, sizeof (int) * plist_max_length);
|
||||
}
|
||||
|
||||
HANDLES_LIST[plist_length] = h;
|
||||
|
@ -2935,7 +2935,7 @@ __gnat_locate_exec_on_path (char *exec_name)
|
|||
|
||||
#define EXPAND_BUFFER_SIZE 32767
|
||||
|
||||
wapath_val = alloca (EXPAND_BUFFER_SIZE);
|
||||
wapath_val = (TCHAR *) alloca (EXPAND_BUFFER_SIZE);
|
||||
|
||||
wapath_val [0] = '.';
|
||||
wapath_val [1] = ';';
|
||||
|
@ -2945,7 +2945,7 @@ __gnat_locate_exec_on_path (char *exec_name)
|
|||
|
||||
if (!res) wapath_val [0] = _T('\0');
|
||||
|
||||
apath_val = alloca (EXPAND_BUFFER_SIZE);
|
||||
apath_val = (char *) alloca (EXPAND_BUFFER_SIZE);
|
||||
|
||||
WS2SC (apath_val, wapath_val, EXPAND_BUFFER_SIZE);
|
||||
return __gnat_locate_exec (exec_name, apath_val);
|
||||
|
|
|
@ -88,14 +88,14 @@ append_arg (int *index, LPWSTR dir, LPWSTR value,
|
|||
{
|
||||
/* no dir prefix */
|
||||
dirlen = 0;
|
||||
fullvalue = xmalloc ((vallen + 1) * sizeof(TCHAR));
|
||||
fullvalue = (LPWSTR) xmalloc ((vallen + 1) * sizeof(TCHAR));
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Add dir first */
|
||||
dirlen = _tcslen (dir);
|
||||
|
||||
fullvalue = xmalloc ((dirlen + vallen + 1) * sizeof(TCHAR));
|
||||
fullvalue = (LPWSTR) xmalloc ((dirlen + vallen + 1) * sizeof(TCHAR));
|
||||
_tcscpy (fullvalue, dir);
|
||||
}
|
||||
|
||||
|
@ -203,7 +203,7 @@ __gnat_initialize (void *eh ATTRIBUTE_UNUSED)
|
|||
if (ldir != NULL)
|
||||
{
|
||||
int n = ldir - wargv[k] + 1;
|
||||
dir = xmalloc ((n + 1) * sizeof (TCHAR));
|
||||
dir = (LPWSTR) xmalloc ((n + 1) * sizeof (TCHAR));
|
||||
_tcsncpy (dir, wargv[k], n);
|
||||
dir[n] = _T('\0');
|
||||
}
|
||||
|
|
|
@ -90,7 +90,7 @@ __gnat_SEH_error_handler (struct _EXCEPTION_RECORD* ExceptionRecord,
|
|||
*/
|
||||
if ((ExceptionRecord->ExceptionInformation[1] & 3) != 0
|
||||
|| IsBadCodePtr
|
||||
((void *)(ExceptionRecord->ExceptionInformation[1] + 4096)))
|
||||
((FARPROC)(ExceptionRecord->ExceptionInformation[1] + 4096)))
|
||||
{
|
||||
exception = &program_error;
|
||||
msg = "EXCEPTION_ACCESS_VIOLATION";
|
||||
|
|
|
@ -326,7 +326,7 @@ struct layout
|
|||
|
||||
#if defined (__WIN32)
|
||||
#include <windows.h>
|
||||
#define IS_BAD_PTR(ptr) (IsBadCodePtr((void *)ptr))
|
||||
#define IS_BAD_PTR(ptr) (IsBadCodePtr((FARPROC)ptr))
|
||||
#elif defined (sun)
|
||||
#define IS_BAD_PTR(ptr) ((unsigned long)ptr == -1UL)
|
||||
#else
|
||||
|
|
Loading…
Reference in New Issue