Fixes <https://bugs.gnu.org/32397>. Reported by fis trivial <ybbs.daans@hotmail.com>. * gnu/packages/patches/gcc-4.8-libsanitizer-fix.patch: New file. * gnu/packages/gcc.scm (gcc-4.8)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it.
		
			
				
	
	
		
			15 lines
		
	
	
	
		
			686 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
	
		
			686 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
| This is a backport of part of this patch from 6.5 to 4.8:
 | |
| 
 | |
|   https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=8937b94d1a643fd9760714642296d034a45254a8
 | |
| 
 | |
| --- a/libsanitizer/tsan/tsan_platform_linux.cc
 | |
| +++ b/libsanitizer/tsan/tsan_platform_linux.cc
 | |
| @@ -351,7 +351,7 @@ bool IsGlobalVar(uptr addr) {
 | |
|  // closes within glibc. The code is a pure hack.
 | |
|  int ExtractResolvFDs(void *state, int *fds, int nfd) {
 | |
|    int cnt = 0;
 | |
| -  __res_state *statp = (__res_state*)state;
 | |
| +  struct __res_state *statp = (struct __res_state*)state;
 | |
|    for (int i = 0; i < MAXNS && cnt < nfd; i++) {
 | |
|      if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
 | |
|        fds[cnt++] = statp->_u._ext.nssocks[i];
 |