[M3devel] new unknown qualification errors

Daniel Alejandro Benavides D. dabenavidesd at yahoo.es
Mon Jan 28 13:51:43 CET 2008


Hi Neels:
If I rememeber this happen since some time ago. Just look this post of mine, you need to change the IMPORT and the lines that compiler complains:
https://mail.elegosoft.com/pipermail/m3devel/2008-January/000806.html:

importing Scheduler instead of SchedulerPosix 
Then replace the call for the functions of SchedulerPosix for Scheduler
I think that would solve that problem.

Thanks,

Daniel Benavides





Neels Janosch Hofmeyr <neels at elego.de> escribió: Hi devel,

I am trying to compile the suplib with the new 5.5.1 snapshot cm3. It 
worked fine with 5.4.0, but now I get errors I cannot figure out how to 
correct:

===> suplib
--- building in LINUXLIBC6 ---

new source -> compiling StatBufOffT64.m3
"../src/StatBufOffT64.m3", line 40: unknown qualification '.' (asLong)
"../src/StatBufOffT64.m3", line 45: unknown qualification '.' (assignOffT)
2 errors encountered
new source -> compiling Ugzip.m3
"../src/Ugzip.m3", line 63: unknown qualification '.' (DisableSwitching)
"../src/Ugzip.m3", line 67: unknown qualification '.' (EnableSwitching)
"../src/Ugzip.m3", line 74: unknown qualification '.' (DisableSwitching)
"../src/Ugzip.m3", line 78: unknown qualification '.' (EnableSwitching)
4 errors encountered
new source -> compiling CVTree.m3
"../src/CVTree.m3", line 315: unknown qualification '.' (DisableSwitching)
"../src/CVTree.m3", line 319: unknown qualification '.' (EnableSwitching)
"../src/CVTree.m3", line 325: unknown qualification '.' (DisableSwitching)
"../src/CVTree.m3", line 329: unknown qualification '.' (EnableSwitching)
"../src/CVTree.m3", line 335: unknown qualification '.' (DisableSwitching)
"../src/CVTree.m3", line 339: unknown qualification '.' (EnableSwitching)
6 errors encountered
compilation failed => not building library "libsuplib.a"
Fatal Error: package build failed


I need help with all of these. However, I tried investigating the first 
one: Utypes.asLong()

By coincidence, I saw that in FSPosix.m3, a line saying
    status.size := Utypes.asLong(statBuf.st_size);
was changed to
    status.size := ORD(statBuf.st_size);

Reading the log for the linux/Utypes.i3 gets me confused. It says how to 
make a off_t from a long, but doesn't say anything about the reverse 
direction. Is ORD(x) always the way to go? Here is the log extract:

revision 1.4
date: 2007-11-29 03:53:15 +0100;  author: hosking;  state: Exp;  lines: 
+0 -3;  commitid: 3xU0vDzVxflBSpHs;
Remove residual implementations of Utypes.asLong and Utypes.assignOffT.
----------------------------
revision 1.3
date: 2004-01-30 18:45:34 +0100;  author: wagner;  state: Exp;  lines: 
+1 -0;
add a procedure to assign values to off_t variables, as they may now be
structured types, depending on the platform:

  PROCEDURE expandAssign(VAR dest: off_t; src: long)


Well, where would API changes like these be documented, if I ever need 
to look them up on my own?
Thanks,

-- 
Neels Janosch Hofmeyr
Software Developer

neels at elego.de
Public Key: http://binarchy.net/neels/neels.hofmeyr.public.key.asc

elego Software Solutions GmbH           http://www.elegosoft.com
Gustav-Meyer-Allee 25, Gebäude 12       HRB 77719
13355 Berlin, Germany                   Amtsgericht Charlottenburg
Tel.: +49 30 23 45 86 96                Sitz der Gesellschaft: Berlin
Fax:  +49 30 23 45 86 95                Geschäftsführer: Olaf Wagner




       
---------------------------------

¿Con Mascota por primera vez? - Sé un mejor Amigo
Entra en Yahoo! Respuestas.
  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20080128/13609b84/attachment-0002.html>


More information about the M3devel mailing list