GNU bug report logs - #6989
24.0.50; w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'

Previous Next

Packages: emacs, w32;

Reported by: Stephen Powell <stephen_powell <at> optusnet.com.au>

Date: Mon, 6 Sep 2010 01:47:01 UTC

Severity: normal

Found in version 24.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 6989 in the body.
You can then email your comments to 6989 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6989; Package emacs. (Mon, 06 Sep 2010 01:47:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stephen Powell <stephen_powell <at> optusnet.com.au>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 06 Sep 2010 01:47:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Stephen Powell <stephen_powell <at> optusnet.com.au>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.0.50;
	w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
Date: Mon, 06 Sep 2010 01:55:19 +0100
I get this error when compiling emacs under cygwin:

w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'

This is the code in w32.c:

#include <psapi.h>
/* This either is not in psapi.h or guarded by higher value of
   _WIN32_WINNT than what we use.  */
typedef struct _PROCESS_MEMORY_COUNTERS_EX {

However since the update of w32api-3.15-1
<http://cygwin.com/ml/cygwin-announce/2010-08/msg00033.html>
on the 28 August struct _PROCESS_MEMORY_COUNTERS_EX is defined.


In GNU Emacs 24.0.50.1 (i386-mingw-nt6.0.6002)
 of 2010-09-02 on STEVEP-PC
Windowing system distributor `Microsoft Corp.', version 6.0.6002
configured using `configure --with-gcc (3.4)'




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6989; Package emacs. (Mon, 06 Sep 2010 06:17:02 GMT) Full text and rfc822 format available.

Message #8 received at 6989 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stephen Powell <stephen_powell <at> optusnet.com.au>
Cc: 6989 <at> debbugs.gnu.org
Subject: Re: bug#6989: 24.0.50; w32.c:99: error: redefinition of `struct
	_PROCESS_MEMORY_COUNTERS_EX'
Date: Mon, 06 Sep 2010 02:18:11 -0400
> Date: Mon, 06 Sep 2010 01:55:19 +0100
> From: Stephen Powell <stephen_powell <at> optusnet.com.au>
> Cc: 
> 
> I get this error when compiling emacs under cygwin:
> 
> w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
> 
> This is the code in w32.c:
> 
> #include <psapi.h>
> /* This either is not in psapi.h or guarded by higher value of
>    _WIN32_WINNT than what we use.  */
> typedef struct _PROCESS_MEMORY_COUNTERS_EX {
> 
> However since the update of w32api-3.15-1
> <http://cygwin.com/ml/cygwin-announce/2010-08/msg00033.html>
> on the 28 August struct _PROCESS_MEMORY_COUNTERS_EX is defined.

Can you show its definition in w32api 3.15-1, and also tell which
header defines it?

Thanks.




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6989; Package emacs. (Mon, 06 Sep 2010 08:53:02 GMT) Full text and rfc822 format available.

Message #11 received at 6989 <at> debbugs.gnu.org (full text, mbox):

From: Stephen Powell <stephen_powell <at> optusnet.com.au>
To: eliz <at> gnu.org
Cc: 6989 <at> debbugs.gnu.org
Subject: Re: bug#6989: 24.0.50;
	w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
Date: Mon, 06 Sep 2010 09:54:04 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

> Can you show its definition in w32api 3.15-1, and also tell which
> header defines it?

,----[ c:/cygwin/usr/include/w32api/psapi.h ]
|
| typedef struct _PROCESS_MEMORY_COUNTERS_EX {
| 	DWORD cb;
| 	DWORD PageFaultCount;
| 	DWORD PeakWorkingSetSize;
| 	DWORD WorkingSetSize;
| 	DWORD QuotaPeakPagedPoolUsage;
| 	DWORD QuotaPagedPoolUsage;
| 	DWORD QuotaPeakNonPagedPoolUsage;
| 	DWORD QuotaNonPagedPoolUsage;
| 	DWORD PagefileUsage;
| 	DWORD PeakPagefileUsage;
| 	DWORD PrivateUsage;
| } PROCESS_MEMORY_COUNTERS_EX,*PPROCESS_MEMORY_COUNTERS_EX;
|
`----




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6989; Package emacs. (Mon, 06 Sep 2010 17:36:01 GMT) Full text and rfc822 format available.

Message #14 received at 6989 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stephen Powell <stephen_powell <at> optusnet.com.au>
Cc: 6989 <at> debbugs.gnu.org
Subject: Re: bug#6989: 24.0.50;
	w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
Date: Mon, 06 Sep 2010 20:38:48 +0300
> Date: Mon, 06 Sep 2010 09:54:04 +0100
> From: Stephen Powell <stephen_powell <at> optusnet.com.au>
> CC: 6989 <at> debbugs.gnu.org
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> > Can you show its definition in w32api 3.15-1, and also tell which
> > header defines it?
> 
> ,----[ c:/cygwin/usr/include/w32api/psapi.h ]
> |
> | typedef struct _PROCESS_MEMORY_COUNTERS_EX {
> | 	DWORD cb;
> | 	DWORD PageFaultCount;
> | 	DWORD PeakWorkingSetSize;
> | 	DWORD WorkingSetSize;
> | 	DWORD QuotaPeakPagedPoolUsage;
> | 	DWORD QuotaPagedPoolUsage;
> | 	DWORD QuotaPeakNonPagedPoolUsage;
> | 	DWORD QuotaNonPagedPoolUsage;
> | 	DWORD PagefileUsage;
> | 	DWORD PeakPagefileUsage;
> | 	DWORD PrivateUsage;
> | } PROCESS_MEMORY_COUNTERS_EX,*PPROCESS_MEMORY_COUNTERS_EX;
> |
> `----

Thanks.  One more question: is it true that w32api 3.14 didn't have
this typedef in psapi.h, and 3.15 introduced it?




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6989; Package emacs. (Tue, 07 Sep 2010 09:35:02 GMT) Full text and rfc822 format available.

Message #17 received at 6989 <at> debbugs.gnu.org (full text, mbox):

From: Stephen Powell <stephen_powell <at> optusnet.com.au>
To: eliz <at> gnu.org
Cc: 6989 <at> debbugs.gnu.org, stephen_powell <at> optusnet.com.au
Subject: Re: bug#6989: 24.0.50;
	w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
Date: Tue, 07 Sep 2010 10:35:51 +0100
*** E-Mail body has been placed on clipboard, please paste it here! ***




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6989; Package emacs. (Tue, 07 Sep 2010 09:41:02 GMT) Full text and rfc822 format available.

Message #20 received at 6989 <at> debbugs.gnu.org (full text, mbox):

From: Stephen Powell <stephen_powell <at> optusnet.com.au>
To: eliz <at> gnu.org
Cc: 6989 <at> debbugs.gnu.org, stephen_powell <at> optusnet.com.au
Subject: Re: bug#6989: 24.0.50;
	w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
Date: Tue, 07 Sep 2010 10:41:48 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

> Thanks.  One more question: is it true that w32api 3.14 didn't have
> this typedef in psapi.h, and 3.15 introduced it?

According to the cvs log the upstream change was introduced here
<http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/w32api/ChangeLog?rev=1.1055&cvsroot=src>
:

2010-06-28 Rick Rankin <rrankin1424-mingw <at> yahoo.com>

	* include/psapi.h (PROCESS_MEMORY_COUNTERS_EX, PERFORMANCE_INFORMATION,
	GetPerformanceInfo): Define.
	* lib/psapi.def (GetPerformanceInfo): Define.
	* include/wincrypt.h (CryptEnumProvidersA, CryptEnumProvidersW,
	CryptEnumProviders): Define.

The diff of the two versions:

--8<---------------cut here---------------start------------->8---
*** c:/temp/w32api-3.14-1/include/psapi.h	2008-01-30 07:34:43.000000000
+1100
--- c:/cygwin/usr/include/w32api/psapi.h	2010-08-28 10:11:17.001000000 +1000
***************
*** 50,55 ****
--- 50,86 ----
  	DWORD PeakPagefileUsage;
  } PROCESS_MEMORY_COUNTERS,*PPROCESS_MEMORY_COUNTERS;

+ typedef struct _PROCESS_MEMORY_COUNTERS_EX {
+ 	DWORD cb;
+ 	DWORD PageFaultCount;
+ 	DWORD PeakWorkingSetSize;
+ 	DWORD WorkingSetSize;
+ 	DWORD QuotaPeakPagedPoolUsage;
+ 	DWORD QuotaPagedPoolUsage;
+ 	DWORD QuotaPeakNonPagedPoolUsage;
+ 	DWORD QuotaNonPagedPoolUsage;
+ 	DWORD PagefileUsage;
+ 	DWORD PeakPagefileUsage;
+ 	DWORD PrivateUsage;
+ } PROCESS_MEMORY_COUNTERS_EX,*PPROCESS_MEMORY_COUNTERS_EX;
+
+ typedef struct _PERFORMANCE_INFORMATION {
+   DWORD cb;
+   DWORD CommitTotal;
+   DWORD CommitLimit;
+   DWORD CommitPeak;
+   DWORD PhysicalTotal;
+   DWORD PhysicalAvailable;
+   DWORD SystemCache;
+   DWORD KernelTotal;
+   DWORD KernelPaged;
+   DWORD KernelNonpaged;
+   DWORD PageSize;
+   DWORD HandleCount;
+   DWORD ProcessCount;
+   DWORD ThreadCount;
+ } PERFORMANCE_INFORMATION, *PPERFORMANCE_INFORMATION;
+
  /* Grouped by application,not in alphabetical order. */
  BOOL WINAPI EnumProcesses(DWORD *,DWORD,DWORD *);
  BOOL WINAPI EnumProcessModules(HANDLE,HMODULE *,DWORD,LPDWORD);
***************
*** 70,75 ****
--- 101,107 ----
  DWORD WINAPI GetDeviceDriverFileNameA(LPVOID,LPSTR,DWORD);
  DWORD WINAPI GetDeviceDriverFileNameW(LPVOID,LPWSTR,DWORD);
  BOOL WINAPI GetProcessMemoryInfo(HANDLE,PPROCESS_MEMORY_COUNTERS,DWORD);
+ BOOL WINAPI GetPerformanceInfo(PPERFORMANCE_INFORMATION,DWORD);
  #if (_WIN32_WINNT >= 0x0501)
  DWORD WINAPI GetProcessImageFileNameA(HANDLE,LPSTR,DWORD);
  DWORD WINAPI GetProcessImageFileNameW(HANDLE,LPWSTR,DWORD);
--8<---------------cut here---------------end--------------->8---




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Fri, 17 Sep 2010 21:38:01 GMT) Full text and rfc822 format available.

Notification sent to Stephen Powell <stephen_powell <at> optusnet.com.au>:
bug acknowledged by developer. (Fri, 17 Sep 2010 21:38:01 GMT) Full text and rfc822 format available.

Message #25 received at 6989-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stephen Powell <stephen_powell <at> optusnet.com.au>
Cc: 6989-done <at> debbugs.gnu.org
Subject: Re: bug#6989: 24.0.50;
	w32.c:99: error: redefinition of `struct _PROCESS_MEMORY_COUNTERS_EX'
Date: Fri, 17 Sep 2010 23:38:48 +0200
> Date: Tue, 07 Sep 2010 10:41:48 +0100
> From: Stephen Powell <stephen_powell <at> optusnet.com.au>
> CC: stephen_powell <at> optusnet.com.au, 6989 <at> debbugs.gnu.org
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> > Thanks.  One more question: is it true that w32api 3.14 didn't have
> > this typedef in psapi.h, and 3.15 introduced it?
> 
> According to the cvs log the upstream change was introduced here
> <http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/w32api/ChangeLog?rev=1.1055&cvsroot=src>
> :
> 
> 2010-06-28 Rick Rankin <rrankin1424-mingw <at> yahoo.com>
> 
> 	* include/psapi.h (PROCESS_MEMORY_COUNTERS_EX, PERFORMANCE_INFORMATION,
> 	GetPerformanceInfo): Define.
> 	* lib/psapi.def (GetPerformanceInfo): Define.
> 	* include/wincrypt.h (CryptEnumProvidersA, CryptEnumProvidersW,
> 	CryptEnumProviders): Define.

Thanks.  This should now be fixed (revno 101465).  Please try it, and
if the problem still persists, reopen this bug report.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 16 Oct 2010 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 14 years and 247 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.