1. LCC Compilation with the Eu2C translator
- Posted by euman at bellsouth.net Oct 13, 2002
- 362 views
Hello all, Using various LCC compiler versions [99-02]: I have come to the conclusion that LCC does not agree with procedure proc( object hi_val ) if atom(hi_val) then -- do something else -- We always wind-up here even if (hi_val) is an atom, why? end if and will crash on any instance you would check for an atom. This really seems to me to be a more Euphoric problem than LCC..? [Dont forget I have the interpreter code...maybe I'll figure this out.] Rob??? anyone? BTW, Im not recieving any forum messages again, maybe this problem is my ISP and not TOPICA...however, it has been a TOPICA problem in the past... Rob??? Euman euman at bellsouth.net ================================================================== ==================================================================
2. Re: LCC Compilation with the Eu2C translator
- Posted by Robert Craig <rds at RapidEuphoria.com> Oct 13, 2002
- 352 views
Euman writes: > Using various LCC compiler versions [99-02]: > I have come to the conclusion that LCC does not agree with > > procedure proc( object hi_val ) > if atom(hi_val) then > -- do something > else > -- We always wind-up here even if (hi_val) is an atom, why? > end if > > and will crash on any instance you would check for an atom. > This really seems to me to be a more Euphoric problem than LCC..? It works fine for me. I have version 3.8, August 6, 2002 of Lcc. I translated to C and compiled with Lcc the following: procedure proc( object hi_val ) if atom(hi_val) then puts(1, "it's an atom\n") -- do something else -- We always wind-up here even if (hi_val) is an atom, why? puts(1, "it's a sequence\n") end if end procedure proc(99) proc({99}) ?getc(0) > BTW, Im not recieving any forum messages again, > maybe this problem is my ISP and not TOPICA...however, > it has been a TOPICA problem in the past... It's probably your ISP blocking Topica again. Topica has gotten onto a few blacklists, and is getting blocked by some ISPs. Your address is still listed on the subscriber list. Welcome back! Regards, Rob Craig Rapid Deployment Software http://www.RapidEuphoria.com
3. Re: LCC Compilation with the Eu2C translator
- Posted by euman at bellsouth.net Oct 14, 2002
- 348 views
Hi Rob, All. If the length of an atom is not defined then of course you would expect pObject (in the below routine) to fail as an atom BUT,,, global constant -- a registered constant value in Win32lib user_val = 99 -- obligitory procedure proc( object pObject ) if atom(pObject) then -- do something else -- We always wind-up here even if (pObject) is an atom, why? end if end procedure proc(user_val) Win32lib is cluttered with such code... I havent found any of my API programs that are unable to compile/run when using LCC so, Win32lib has to be where the problem lies. Im still wondering why if a constant is declared and has a value registered with Win32lib (before your call to the procedure for test) that you would have such problems. This confuses me! [6 yrs of Euphoria programming and I still dont get Win32lib] Euman euman at bellsouth.net ================================================================== ================================================================== ----- Original Message ----- From: "Euman" <euman at bellsouth.net> To: <EUforum at topica.com> Sent: Sunday, October 13, 2002 7:48 PM Subject: LCC Compilation with the Eu2C translator > Hello all, > > Using various LCC compiler versions [99-02]: > I have come to the conclusion that LCC does not agree with > > procedure proc( object hi_val ) > if atom(hi_val) then > -- do something > else > -- We always wind-up here even if (hi_val) is an atom, why? > end if > > and will crash on any instance you would check for an atom. > This really seems to me to be a more Euphoric problem than LCC..? > > [Dont forget I have the interpreter code...maybe I'll figure this out.] > > Rob??? anyone? > > BTW, Im not recieving any forum messages again, maybe this problem > is my ISP and not TOPICA...however, it has been a TOPICA problem > in the past... > > Rob??? > > Euman > euman at bellsouth.net > > ================================================================== > ================================================================== >
4. Re: LCC Compilation with the Eu2C translator
- Posted by Derek Parnell <ddparnell at bigpond.com> Oct 14, 2002
- 343 views
Hi, I guess from your short description of the problem you are having that you have a Win32lib program that you are compiling with Lcc, and that when you execute the compile version it fails, but if you execute the interpreted version it works. Have I got that right? Also, the point of failure is a call to the atom() built-in function, right? Can you reproduce this problem using a tiny (non-Win32lib) example? Is it every instance of atom() calls in win32lib that is giving this problem or only certain one(s)? ------------- Derek. 15/10/2002 9:44:12 AM, euman at bellsouth.net wrote: > >Hi Rob, All. > >If the length of an atom is not defined then of course you would expect > >pObject (in the below routine) to fail as an atom > >BUT,,, > >global constant -- a registered constant value in Win32lib > user_val = 99 -- obligitory > >procedure proc( object pObject ) > if atom(pObject) then > -- do something > else > -- We always wind-up here even if (pObject) is an atom, why? > end if >end procedure > >proc(user_val) > >Win32lib is cluttered with such code... > >I havent found any of my API programs that are unable to compile/run >when using LCC so, Win32lib has to be where the problem lies. >Im still wondering why if a constant is declared and has a value registered >with Win32lib (before your call to the procedure for test) that you would >have such problems. > >This confuses me! > >[6 yrs of Euphoria programming and I still dont get Win32lib] > >Euman >euman at bellsouth.net > >================================================================== >================================================================== >----- Original Message ----- >From: "Euman" <euman at bellsouth.net> >To: <EUforum at topica.com> >Sent: Sunday, October 13, 2002 7:48 PM >Subject: LCC Compilation with the Eu2C translator > > >> Hello all, >> >> Using various LCC compiler versions [99-02]: >> I have come to the conclusion that LCC does not agree with >> >> procedure proc( object hi_val ) >> if atom(hi_val) then >> -- do something >> else >> -- We always wind-up here even if (hi_val) is an atom, why? >> end if >> >> and will crash on any instance you would check for an atom. >> This really seems to me to be a more Euphoric problem than LCC..? >> >> [Dont forget I have the interpreter code...maybe I'll figure this out.] >> >> Rob??? anyone? >> >> BTW, Im not recieving any forum messages again, maybe this problem >> is my ISP and not TOPICA...however, it has been a TOPICA problem >> in the past... >> >> Rob??? >> >> Euman >> euman at bellsouth.net >> >> ================================================================== >> ================================================================== >> > > > > --------- Cheers, Derek Parnell ICQ# 7647806
5. Re: LCC Compilation with the Eu2C translator
- Posted by Robert Craig <rds at RapidEuphoria.com> Oct 14, 2002
- 348 views
Euman writes: > global constant -- a registered constant value in Win32lib > user_val = 99 -- obligitory > > procedure proc( object pObject ) > if atom(pObject) then > -- do something > else > -- We always wind-up here even if (pObject) is an atom, why? > end if > end procedure > > proc(user_val) It works fine for me with Lcc. > I havent found any of my API programs that are > unable to compile/run when using LCC so, > Win32lib has to be where the problem lies. The "-O" option with Lcc sometimes causes a problem. If it's a link-time error, you can usually solve the problem by removing "-O" from just the file or files that give an error. If it's a run-time error you should try removing "-O" completely from emake.bat, then run emake again. I still think Borland is a better choice. Regards, Rob Craig Rapid Deployment Software http://www.RapidEuphoria.com
6. Re: LCC Compilation with the Eu2C translator
- Posted by euman at bellsouth.net Oct 15, 2002
- 357 views
Hey Derek, this is as shortest as I could come up with: <snip> without type_check without warning with trace include Win32Lib.ew --beta 57.12 trace(1) global integer xScreen, yScreen xScreen = getSystemMetrics(SM_CXSCREEN) -- screen width yScreen = getSystemMetrics(SM_CYSCREEN) -- screen height <snip> Euman euman at bellsouth.net ================================================================== ----- Original Message ----- From: "Euman" <euman at bellsouth.net> To: <EUforum at topica.com> Sent: Monday, October 14, 2002 6:44 PM Subject: Re: LCC Compilation with the Eu2C translator > Hi Rob, All. > > If the length of an atom is not defined then of course you would expect > > pObject (in the below routine) to fail as an atom > > BUT,,, > > global constant -- a registered constant value in Win32lib > user_val = 99 -- obligitory > > procedure proc( object pObject ) > if atom(pObject) then > -- do something > else > -- We always wind-up here even if (pObject) is an atom, why? > end if > end procedure > > proc(user_val) > > Win32lib is cluttered with such code... > > I havent found any of my API programs that are unable to compile/run > when using LCC so, Win32lib has to be where the problem lies. > Im still wondering why if a constant is declared and has a value registered > with Win32lib (before your call to the procedure for test) that you would > have such problems. > > This confuses me! > > [6 yrs of Euphoria programming and I still dont get Win32lib] > > Euman > euman at bellsouth.net