[Firm] Probleme mit cparser

Christoph Mallon mallon at cs.uni-saarland.de
Mon Feb 2 14:26:33 CET 2015


Am 02.02.15 11:24, schrieb Moritz Kroll:
> Hier nochmal die Ausgabe von meiner msysgit-Bash (man beachte das erste
> Fehlschlagen...):

Das sieht sehr wirr aus.
Kann bitte mal jemand in die Logs schauen?

>     [source_annotation_attribute( SA_Parameter|SA_ReturnValue )]
>     struct PostBoundAttribute
>     {
>         unsigned int Deref;
>     };
> 
> Ich finde, sowas muss man boykottieren ;)

Das baue ich jetzt nicht ein. o_O

> Jepp, hier ein Beispiel aus C:\Program Files (x86)\Microsoft
> SDKs\Windows\v7.0A\include\winnt.h

%nl -ba msc_asm.c
     1	typedef unsigned long long ULONGLONG;
     2	typedef unsigned long DWORD;
     3	
     4	__inline ULONGLONG __stdcall Int64ShllMod32(ULONGLONG Value,
DWORD ShiftCount)
     5	{
     6		__asm {
     7			mov     ecx, ShiftCount
     8			mov     eax, dword ptr [Value]
     9			mov     edx, dword ptr [Value+4]
    10			shld    edx, eax, cl
    11			shl     eax, cl
    12		}
    13		return 0;
    14	}
%cparser --print-ast --ms msc_asm.c
msc_asm.c:6:2: error: 'asm { ... }' not supported
1 error(s), 0 warning(s)
typedef long long unsigned int ULONGLONG;
typedef long unsigned int DWORD;
inline ULONGLONG __stdcall Int64ShllMod32(ULONGLONG Value, DWORD ShiftCount)
{
	asm("");
	return 0;
}


Ist gepusht.
Das kann zwar nicht alles, aber für asm {} sollte es reichen. (:

Gruß
	Christoph



More information about the Firm mailing list