Hi, I need to know how can I see whether a certain bit of byte/word/dword is set: or not: function like this would be appreciated: function isset(value: byte word or dword;bit:byte):boolean; for example when i pass the function parrameter a of type word and I want to see whether the bit 14 is set. Regards Pianoman ----- Original Message ----- From: <[EMAIL PROTECTED]> To: <fpc-pascal@lists.freepascal.org> Sent: Monday, February 20, 2006 12:00 PM Subject: fpc-pascal Digest, Vol 18, Issue 24
> Send fpc-pascal mailing list submissions to > fpc-pascal@lists.freepascal.org > > To subscribe or unsubscribe via the World Wide Web, visit > http://lists.freepascal.org/mailman/listinfo/fpc-pascal > or, via email, send a message with subject or body 'help' to > [EMAIL PROTECTED] > > You can reach the person managing the list at > [EMAIL PROTECTED] > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of fpc-pascal digest..." > > > Today's Topics: > > 1. Bug in RTL for arm (Koenraad Lelong) > 2. Re: Internal error 200312122 (Koenraad Lelong) > 3. Re: Internal error 200312122 (Peter Vreman) > 4. How to run FPC 2.x on QNX (Michael M?ller) > 5. RE: tidypas (libtidy) question (Jeff Pohlmeyer) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Sun, 19 Feb 2006 19:04:07 +0100 > From: Koenraad Lelong <[EMAIL PROTECTED]> > Subject: [fpc-pascal] Bug in RTL for arm > To: FPC-Pascal users discussions <fpc-pascal@lists.freepascal.org> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Hi, > Today I did an update via svn. When I compiled for arm (in the hope that > the bug I encountered a while ago would have disappeared) I found a bug > in rtl/linux/arm/sysnr.inc : > Const > syscall_nr_base = syscall_nr_base; > I modified this to : > Const > syscall_nr_base = $900000; > which is similar to fpc 2.0.2. When I compiled this I got my ususal error : > /home/koenraad/fpc-devel/fpc/compiler/ppcrossarm -Ur -XParm-linux- -Xc > -Xr -Ur -Xs -n -Fi../inc -Fi../arm -Fi../unix -Fiarm -FE. > -FU/home/koenraad/fpc-devel/fpc/rtl/units/arm-linux -darm -dRELEASE -Us > -Sg system.pp > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s: Assembler > messages: > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51368: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51376: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51383: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51390: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51398: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51406: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51414: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51422: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51430: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51438: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51446: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51454: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51462: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51470: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51478: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51624: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51632: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51640: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51648: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51655: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51662: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51669: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51676: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51683: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51690: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51697: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51704: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51711: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51718: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51725: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51732: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51739: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51746: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51753: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51760: Error: > unrecognized symbol type "" > /home/koenraad/fpc-devel/fpc/rtl/units/arm-linux/system.s:51767: Error: > unrecognized symbol type "" > threadvr.inc(30,25) Error: Error while assembling exitcode 1 > threadvr.inc(30,25) Fatal: There were 2 errors compiling module, stopping > Fatal: Compilation aborted > make[5]: *** [system.ppu] Fout 1 > make[5]: Leaving directory `/home/koenraad/fpc-devel/fpc/rtl/linux' > make[4]: *** [linux_all] Fout 2 > make[4]: Leaving directory `/home/koenraad/fpc-devel/fpc/rtl' > make[3]: *** [rtl] Fout 2 > make[3]: Leaving directory `/home/koenraad/fpc-devel/fpc/compiler' > make[2]: *** [cycle] Fout 2 > make[2]: Leaving directory `/home/koenraad/fpc-devel/fpc/compiler' > make[1]: *** [compiler_cycle] Fout 2 > make[1]: Leaving directory `/home/koenraad/fpc-devel/fpc' > make: *** [build-stamp.arm-linux] Fout 2 > > Regards, > Koenraad Lelong. > > > ------------------------------ > > Message: 2 > Date: Sun, 19 Feb 2006 19:13:21 +0100 > From: Koenraad Lelong <[EMAIL PROTECTED]> > Subject: Re: [fpc-pascal] Internal error 200312122 > To: FPC-Pascal users discussions <fpc-pascal@lists.freepascal.org> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Koenraad Lelong schreef: > > Peter Vreman schreef: > > > >>> Martin Schreiber schreef: > >>> > >>>> On Sunday 05 February 2006 17.11, Koenraad Lelong wrote: > > > > ... > > > >> > >> Internalerror numbers are just unique numbers be using <date><seqnr>. > >> They > >> don't have any meaning. > >> > >> Quick intro for debugging this. > >> - Build compiler with debug info: 'make cycle OPT=-gl' > >> - Compile source with this new compiler in gdb: > >> - gdb --args <newcompiler> <args> > >> - (gdb) br INTERNALERROR > >> - (gdb) dir <pathtocompilersource> > >> - (gdb) r > >> - Hit breakpoint > >> - (gdb) bt > >> - The backtrace will give you more info. Use 'fr <framenr>' to jump to > >> a function in the callstack so you can watch the code and variables. > >> > > OK, I tried this, but that's as far as I can get. Enclosed the output of > > the backtrace (first lines are the commandline I used). > > Anything I can do further ? > > Thanks, > > Koenraad Lelong. > > > ... > I tried fr <frame#> for the last 20 frames : > (gdb) fr 20 > #20 0x080e04ed in PROC_UNIT () at pmodules.pas:1097 > 1097 loadunits; > (gdb) fr 19 > #19 0x080df58a in LOADUNITS () at pmodules.pas:621 > 621 tppumodule(pu.u).loadppu; > (gdb) fr 18 > #18 0x080d6ef5 in TPPUMODULE__LOADPPU (this=0x404e6c74) at fppu.pas:1509 > 1509 compile(mainsource^); > (gdb) fr 17 > #17 0x0808f207 in COMPILE > (FILENAME='/home/koenraad/msegui/msegui/lib/common/kernel/msebitmap.pas') > at parser.pas:525 > 525 proc_unit; > (gdb) fr 16 > #16 0x080e06f0 in PROC_UNIT () at pmodules.pas:1184 > 1184 parse_implementation_uses; > (gdb) fr 15 > #15 0x080dfd25 in PARSE_IMPLEMENTATION_USES () at pmodules.pas:839 > 839 loadunits; > (gdb) fr 14 > #14 0x080df58a in LOADUNITS () at pmodules.pas:621 > 621 tppumodule(pu.u).loadppu; > (gdb) fr 13 > #13 0x080d6df9 in TPPUMODULE__LOADPPU (this=0x41085734) at fppu.pas:1471 > 1471 load_usedunits; > (gdb) fr 12 > #12 0x080d6853 in TPPUMODULE__LOAD_USEDUNITS (this=0x41085734) at > fppu.pas:1244 > 1244 tppumodule(pu.u).loadppu; > (gdb) fr 11 > #11 0x080d6ef5 in TPPUMODULE__LOADPPU (this=0x40304744) at fppu.pas:1509 > 1509 compile(mainsource^); > (gdb) fr 10 > #10 0x0808f207 in COMPILE > (FILENAME='/home/koenraad/msegui/msegui/lib/common/kernel/msegui.pas') > at parser.pas:525 > 525 proc_unit; > (gdb) fr 9 > #9 0x080e0a5b in PROC_UNIT () at pmodules.pas:1302 > 1302 > gen_intf_wrappers(codesegment,current_module.localsymtable); > (gdb) fr 8 > #8 0x0811d7c3 in GEN_INTF_WRAPPERS (LIST=0x411f3f34, ST=0x41401a54) at > ncgutil.pas:2364 > 2364 gen_intf_wrapper(list,tobjectdef(def)); > (gdb) fr 7 > #7 0x0811d758 in GEN_INTF_WRAPPER (LIST=0x411f3f34, _CLASS=0x41641d54) > at ncgutil.pas:2349 > 2349 > cg.g_intf_wrapper(list,_class.implementedinterfaces.implprocs(i,j),tmps,_cla ss.implementedinterfaces.ioffsets(i)); > (gdb) fr 6 > #6 0x0809cca5 in TCGARM__G_INTF_WRAPPER (LIST=0x411f3f34, > PROCDEF=0x41685744, > > LABELNAME='WRPR_MSEGUI_TINTERNALAPPLICATION_$_IMOUSE_$_1_$_MSEGUI_TINTERNALA PPLICATION_$__GETMOUSEWINID$$LONGWORD', > IOFFSET=373, this=0x40068014) at cgcpu.pas:1479 > 1479 in cgcpu.pas > (gdb) fr 5 > #5 0x080ccfb3 in TCG__G_ADJUST_SELF_VALUE (LIST=0x411f3f34, > PROCDEF=0x41685744, IOFFSET=373, this=0x40068014) at cgobj.pas:2001 > 2001 > cg.a_op_const_reg(list,OP_SUB,paraloc.size,ioffset,paraloc.register); > (gdb) fr 4 > #4 0x0809a141 in TCGARM__A_OP_CONST_REG (LIST=0x411f3f34, OP=OP_SUB, > SIZE=OS_32, A=373, REG=16777216, this=0x40068014) at cgcpu.pas:287 > 287 in cgcpu.pas > (gdb) fr 3 > #3 0x0809a297 in TCGARM__A_OP_CONST_REG_REG (LIST=0x411f3f34, > OP=OP_SUB, SIZE=OS_32, A=373, SRC=16777216, DST=16777216, > this=0x40068014) at cgcpu.pas:323 > 323 in cgcpu.pas > (gdb) fr 3 > #3 0x0809a297 in TCGARM__A_OP_CONST_REG_REG (LIST=0x411f3f34, > OP=OP_SUB, SIZE=OS_32, A=373, SRC=16777216, DST=16777216, > this=0x40068014) at cgcpu.pas:323 > 323 in cgcpu.pas > (gdb) fr 2 > #2 0x0809a6db in TCGARM__A_OP_CONST_REG_REG_CHECKOVERFLOW > (LIST=0x411f3f34, OP=OP_SUB, SIZE=OS_32, A=373, SRC=16777216, > DST=16777216, SETFLAGS=false, OVLOC= > {LOC = LOC_VOID, SIZE = 166, RESFLAGS = 186, VALUE = 134759354, > VALUE64 = 4713231088527885242, REFERENCE = {OFFSET = 134759354, SYMBOL = > 0x4168c2b4, RELSYMBOL = 0x4168c2b4, SEGMENT = 1097666932, BASE = > -2068527460, INDEX = 135726240, REFADDR = 60, SCALEFACTOR = 142, > SYMBOLDATA = 0x809ff56, SIGNINDEX = 52, SHIFTIMM = 4, ADDRESSMODE = 9, > SHIFTMODE = 8}, REGISTER = 134759354, REGISTER64 = {REGLO = 134759354, > REGHI = 1097384628}}, this=0x40068014) at cgcpu.pas:435 > 435 in cgcpu.pas > (gdb) fr 1 > #1 0x080c926f in TCG__GETINTREGISTER (LIST=0x411f3f34, SIZE=OS_32, > this=0x40068014) at cgobj.pas:548 > 548 internalerror(200312122); > (gdb) fr 0 > #0 INTERNALERROR (I=200312122) at verbose.pas:447 > 447 UpdateStatus; > (gdb) > > Is there no-one who can give suggestions where to look next ? I want to > help, but I don't know much about gdb, I don't know about the internals > of fpc... > Regards, > Koenraad Lelong. > > ------------------------------ > > Message: 3 > Date: Mon, 20 Feb 2006 09:03:40 +0100 (CET) > From: "Peter Vreman" <[EMAIL PROTECTED]> > Subject: Re: [fpc-pascal] Internal error 200312122 > To: "FPC-Pascal users discussions" <fpc-pascal@lists.freepascal.org> > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain;charset=iso-8859-1 > > > #2 0x0809a6db in TCGARM__A_OP_CONST_REG_REG_CHECKOVERFLOW > > (LIST=0x411f3f34, OP=OP_SUB, SIZE=OS_32, A=373, SRC=16777216, > > DST=16777216, SETFLAGS=false, OVLOC= > > {LOC = LOC_VOID, SIZE = 166, RESFLAGS = 186, VALUE = 134759354, > > VALUE64 = 4713231088527885242, REFERENCE = {OFFSET = 134759354, SYMBOL = > > 0x4168c2b4, RELSYMBOL = 0x4168c2b4, SEGMENT = 1097666932, BASE = > > -2068527460, INDEX = 135726240, REFADDR = 60, SCALEFACTOR = 142, > > SYMBOLDATA = 0x809ff56, SIGNINDEX = 52, SHIFTIMM = 4, ADDRESSMODE = 9, > > SHIFTMODE = 8}, REGISTER = 134759354, REGISTER64 = {REGLO = 134759354, > > REGHI = 1097384628}}, this=0x40068014) at cgcpu.pas:435 > > 435 in cgcpu.pas > > (gdb) fr 1 > > #1 0x080c926f in TCG__GETINTREGISTER (LIST=0x411f3f34, SIZE=OS_32, > > this=0x40068014) at cgobj.pas:548 > > 548 internalerror(200312122); > > Fixed > > > > ------------------------------ > > Message: 4 > Date: Sun, 19 Feb 2006 14:17:13 +0100 > From: Michael M?ller <[EMAIL PROTECTED]> > Subject: [fpc-pascal] How to run FPC 2.x on QNX > To: fpc-pascal@lists.freepascal.org > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=us-ascii > > Hi, > > we are developing a console application under Delphi. The main task is > to use it under Windows. But there are some situations where we need > to run it under the realtime OS QNX. This is the reason why we use FPC > 1.0.x. But it lacks some interesting features like dynamic arrays. > > I know that QNX isn't official supported anymore. But do you see any > chances that it would be possible for us to make the needed changes to > compile FPC under QNX? Many things are Unix like and QNX supports > POSIX. So where are the difficulties to support QNX? > > I didn't subscribe to the list. So please CC me in your anwser. > > Regards > > Michael > > ------------------------------ > > Message: 5 > Date: Mon, 20 Feb 2006 03:52:16 -0600 > From: "Jeff Pohlmeyer" <[EMAIL PROTECTED]> > Subject: [fpc-pascal] RE: tidypas (libtidy) question > To: fpc-pascal@lists.freepascal.org > Cc: [EMAIL PROTECTED] > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1 > > > ... when I do this, I get an AV (in Delphi7). > > > tidyOptSetValue(fTidyDoc, TidyErrFile, ctmbstr(TIDY_NULL_FILE)); > > tidySetErrorFile(fTidyDoc, ctmbstr(TIDY_NULL_FILE)); > > { where TIDY_NULL_FILE = 'NUL' for Windows } > > If you can send me (off-list) a short sample program that > shows the AV, maybe I can help. > > > Regards, > - Jeff > > ------------------------------ > > _______________________________________________ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > http://lists.freepascal.org/mailman/listinfo/fpc-pascal > > End of fpc-pascal Digest, Vol 18, Issue 24 > ****************************************** > > > __________ Informacia od NOD32 1.1413 (20060217) __________ > > Tato sprava bola preverena antivirusovym systemom NOD32. > http://www.eset.sk > > _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal