mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-30 16:17:05 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51695 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			76 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // RUN: %llvmgxx %s -emit-llvm -S -o -
 | |
| // PR1084
 | |
| 
 | |
| extern "C"
 | |
| {
 | |
|   typedef unsigned char PRUint8;
 | |
|   typedef unsigned int PRUint32;
 | |
| }
 | |
| typedef PRUint32 nsresult;
 | |
| struct nsID
 | |
| {
 | |
| };
 | |
| typedef nsID nsIID;
 | |
| class nsISupports
 | |
| {
 | |
| };
 | |
| extern "C++"
 | |
| {
 | |
|   template < class T > struct nsCOMTypeInfo
 | |
|   {
 | |
|     static const nsIID & GetIID ()
 | |
|     {
 | |
|     }
 | |
|   };
 | |
| }
 | |
| 
 | |
| class nsIDOMEvent:public nsISupports
 | |
| {
 | |
| };
 | |
| class nsIDOMEventListener:public nsISupports
 | |
| {
 | |
| public:static const nsIID & GetIID ()
 | |
|   {
 | |
|   }
 | |
|   virtual nsresult
 | |
|     __attribute__ ((regparm (0), cdecl)) HandleEvent (nsIDOMEvent * event) =
 | |
|     0;
 | |
| };
 | |
| class nsIDOMMouseListener:public nsIDOMEventListener
 | |
| {
 | |
| public:static const nsIID & GetIID ()
 | |
|   {
 | |
|     static const nsIID iid = {
 | |
|     };
 | |
|   }
 | |
|   virtual nsresult
 | |
|     __attribute__ ((regparm (0),
 | |
| 		    cdecl)) MouseDown (nsIDOMEvent * aMouseEvent) = 0;
 | |
| };
 | |
| typedef
 | |
| typeof (&nsIDOMEventListener::HandleEvent)
 | |
|   GenericHandler;
 | |
|      struct EventDispatchData
 | |
|      {
 | |
|        PRUint32 message;
 | |
|        GenericHandler method;
 | |
|        PRUint8 bits;
 | |
|      };
 | |
|      struct EventTypeData
 | |
|      {
 | |
|        const EventDispatchData *events;
 | |
|        int numEvents;
 | |
|        const nsIID *iid;
 | |
|      };
 | |
|      static const EventDispatchData sMouseEvents[] = {
 | |
|        {
 | |
| 	(300 + 2),
 | |
| 	reinterpret_cast < GenericHandler > (&nsIDOMMouseListener::MouseDown),
 | |
| 	0x01}
 | |
|      };
 | |
| static const EventTypeData sEventTypes[] = {
 | |
|   {
 | |
|    sMouseEvents, (sizeof (sMouseEvents) / sizeof (sMouseEvents[0])),
 | |
|    &nsCOMTypeInfo < nsIDOMMouseListener >::GetIID ()}
 | |
| };
 |