# HG changeset patch # User Laurent Bessard # Date 1367484307 -7200 # Node ID b566ab5556aba5966130a5d5c9b103997b3bcb0d # Parent 906fe7f2c0523a1e4803d4c3d42f831734e199ad Fixed warnings in python test diff -r 906fe7f2c052 -r b566ab5556ab tests/python/c_code@c_ext/cfile.xml --- a/tests/python/c_code@c_ext/cfile.xml Thu May 02 09:42:14 2013 +0200 +++ b/tests/python/c_code@c_ext/cfile.xml Thu May 02 10:45:07 2013 +0200 @@ -11,6 +11,8 @@ <![CDATA[volatile long Lock=0; volatile char PtoC=1,CtoP=2; +extern long AtomicCompareExchange(long*,long, long); + int Simple_C_Call(int val){ return val+1; } @@ -23,10 +25,10 @@ beremiz' runtime implementation */ int res = 0; - if(!AtomicCompareExchange(&Lock, 0, 1)){ + if(!AtomicCompareExchange((long*)&Lock, 0, 1)){ PtoC=toC; *fromC=CtoP; - AtomicCompareExchange(&Lock, 1, 0); + AtomicCompareExchange((long*)&Lock, 1, 0); res=1; } printf("C code called by Python: toC %d fromC %d\n",toC,*fromC); @@ -36,11 +38,10 @@ int PLC_C_Call(char fromPLC, char *toPLC){ /* PLC also have to be realy carefull not to conflict with asynchronous python access */ - int res; - if(!AtomicCompareExchange(&Lock, 0, 1)){ + if(!AtomicCompareExchange((long*)&Lock, 0, 1)){ CtoP = fromPLC; *toPLC = PtoC; - AtomicCompareExchange(&Lock, 1, 0); + AtomicCompareExchange((long*)&Lock, 1, 0); return 1; } return 0; @@ -56,9 +57,9 @@ <![CDATA[]]> </retrieveFunction> <publishFunction> -<![CDATA[if(!AtomicCompareExchange(&Lock, 0, 1)){ +<![CDATA[if(!AtomicCompareExchange((long*)&Lock, 0, 1)){ TestInput = CtoP + PtoC + TestOutput; - AtomicCompareExchange(&Lock, 1, 0); + AtomicCompareExchange((long*)&Lock, 1, 0); }]]> </publishFunction> </CFile> diff -r 906fe7f2c052 -r b566ab5556ab tests/python/plc.xml --- a/tests/python/plc.xml Thu May 02 09:42:14 2013 +0200 +++ b/tests/python/plc.xml Thu May 02 10:45:07 2013 +0200 @@ -8,7 +8,7 @@ productVersion="0.0" creationDateTime="2008-12-14T16:21:19"/> <contentHeader name="Beremiz Python Support Tests" - modificationDateTime="2013-04-25T11:47:30"> + modificationDateTime="2013-05-02T10:44:19"> <coordinateInfo> <pageSize x="1024" y="1024"/> <fbd> @@ -1161,6 +1161,7 @@ {{ char toPLC; char fromPLC = GetFbVar(IN); + extern int PLC_C_Call(char, char *); if(PLC_C_Call(fromPLC, &toPLC)){ SetFbVar(OUT, toPLC); }