Fehler bei enums bei g++?

Christian Weddeling christian.weddeling at web.de
Fri Mar 8 15:36:14 CET 2002


Hallo!

Gegeben sei folgende Datenstruktur aus CommonC++:

typedef enum
{
	THREAD_CANCEL_INITIAL=0,
	THREAD_CANCEL_DEFERRED=1,
	THREAD_CANCEL_IMMEDIATE,
	THREAD_CANCEL_DISABLED,
	THREAD_CANCEL_DEFAULT=THREAD_CANCEL_DEFERRED,
	THREAD_CANCEL_INVALID
} thread_cancel_t;

Nun habe ich vermutet, daß die werte so aussehen:

THREAD_CANCEL_INITIAL = 0
THREAD_CANCEL_DEFERRED = 1
THREAD_CANCEL_IMMEDIATE = 2
THREAD_CANCEL_DISABLED = 3
THREAD_CANCEL_DEFAULT = 1
THREAD_CANCEL_INVALID = 4

Tatsächlich sieht es aber so aus:

THREAD_CANCEL_INITIAL = 0
THREAD_CANCEL_DEFERRED = 1
THREAD_CANCEL_IMMEDIATE = 2
THREAD_CANCEL_DISABLED = 3
THREAD_CANCEL_DEFAULT = 1
THREAD_CANCEL_INVALID = 2
                                         ^^^^^

Ist das nun ein Bug meines g++  oder ein Feature?

gcc version 2.96 20000731 (Mandrake Linux 8.1 2.96-0.62mdk)
-- 


	Ciao
		Christian



More information about the Linux mailing list