Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2004-04

Compiler error messages GO32V2

5 messages · 3 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Unknown author

Hi,

i have a problem to compile the following some rows...

uses crt;
var NoOfColumns : word;
    StatusLine,s : string;
begin
  NoOfColumns:=24;
  StatusLine:='ESC';
  s:='Press any key...';
  gotoXY((NoOfColumns div 2)-(Length(StatusLine+': '+s) div 2), 2);
end.

With version 1.9.3. (now i tried version from 5.4.2004 also) i always got a compiler error (in IDE)

"Asm [mov reg8,???] invalid combination of opcode and operands"

Second,

if i got any compiler error message (also in IDE) in one program and then i try to compile the another one with command New() (as this)

type px = ^pt;
     pt = record a:byte; b:word; end;
var pp : px;
begin
  New(pp);
end.

i always got a error message

"Type identifier expected"

Normally if i compile this program as first one it is O.K.

What i'm doing wrong ?

All is done in GO32V2 for DOS in IDE.

Lubomir Cabla/CBL

Reply by email

Tomas Hajny
to Unknown author

From:
To:
Subject: [fpc-pascal]Compiler error messages GO32V2 Date sent: Mon, 5 Apr 2004 09:50:25 +0200

Hi,

Show quoted text 19 lines
i have a problem to compile the following some rows... uses crt; var NoOfColumns : word; StatusLine,s : string; begin NoOfColumns:=24; StatusLine:='ESC'; s:='Press any key...'; gotoXY((NoOfColumns div 2)-(Length(StatusLine+': '+s) div 2), 2); end. With version 1.9.3. (now i tried version from 5.4.2004 also) i always got a compiler error (in IDE) "Asm [mov reg8,???] invalid combination of opcode and operands"

This looks like a compiler bug, I'd suggest to enter this into the bugs repository on our WWW pages. Please, check what level of optimizations have you set (-O???? parameters) and whether it happens with all optimizations turned off as well (-O-), and add this information to your bug report.

Show quoted text 24 lines
Second, if i got any compiler error message (also in IDE) in one program and then i try to compile the another one with command New() (as this) type px = ^pt; pt = record a:byte; b:word; end; var pp : px; begin New(pp); end. i always got a error message "Type identifier expected" Normally if i compile this program as first one it is O.K. What i'm doing wrong ? All is done in GO32V2 for DOS in IDE.

I cannot reproduce this one myself. What operating system are you running on (plain DOS, WinXX, ...)? Can you give more exact procedure how to reproduce it, please? I created two new files, typed your source into one and nonsense statement (begin xxx end.) into the other, then tried to compile the second one, got a compiler error, switched to the first one and compiled without any problems. Then I typed a nonsense letter within your source, tried to compile it (and got an error, of course), reverted my change and compiled again, again no

Tomas

ANONYMNI PRIPOJENI K INTERNETU - bez registrace, zdarma, ihned! Pripojeni na cisle 971 200 111 z cele CR, v Praze navic na cisle 971 200 555. Uzivatelske jmeno "volny", heslo "volny". http://sluzby.volny.cz/product/dialup/anon/

Reply by email

Peter Vreman
to Tomas Hajny
Show quoted text 23 lines
> uses crt; > var NoOfColumns : word; > StatusLine,s : string; > begin > NoOfColumns:=24; > StatusLine:='ESC'; > s:='Press any key...'; > gotoXY((NoOfColumns div 2)-(Length(StatusLine+': '+s) > div 2), 2); > end. > > With version 1.9.3. (now i tried version from 5.4.2004 > also) > i always got a compiler error (in IDE) > > "Asm [mov reg8,???] invalid combination of opcode and > operands" This looks like a compiler bug, I'd suggest to enter this into the bugs repository on our WWW pages. Please, check what level of optimizations have you set (-O???? parameters) and whether it happens with all optimizations turned off as well (-O-), and add this information to your bug report.

This is a register allocator bug:

.L38:
sarl $1,%eax
subl %eax,%edi
movb %ireg5l,%al
movb -516(%ebp),%dl
call CRT_GOTOXY$BYTE$BYTE

%ireg5l = %DIL which doesn't exists on x86

Reply by email

Unknown author

Hi,

this problem appears under pure DOS 6.22 and in DOS under Windows 2003 too.

It is enough to change New(pp) to New(p) and with compiling i got 'some' error "p doesn't exist". Then i change back New(p) to New(pp) and compiler shows this error
"Type identifier expected"

When i exit IDE to DOS and start again, compiler doesn't report this message.

IDE 0.9.2 5.4.2004, compiler 1.9.3

With compiler version 1.0.10 is all O.K.

Lubomir Cabla/CBL

Earlier message 54 lines
-----Original Message----- From: Tomas Hajny Sent: Monday, April 05, 2004 10:20 AM To: Subject: Re: [fpc-pascal]Compiler error messages GO32V2 > Second, > > if i got any compiler error message (also in IDE) in > one program > and then i try to compile the another one with command > New() (as this) > > type px = ^pt; > pt = record a:byte; b:word; end; > var pp : px; > begin > New(pp); > end. > > i always got a error message > > "Type identifier expected" > > Normally if i compile this program as first one it is > O.K. > > What i'm doing wrong ? > > All is done in GO32V2 for DOS in IDE. I cannot reproduce this one myself. What operating system are you running on (plain DOS, WinXX, ...)? Can you give more exact procedure how to reproduce it, please? I created two new files, typed your source into one and nonsense statement (begin xxx end.) into the other, then tried to compile the second one, got a compiler error, switched to the first one and compiled without any problems. Then I typed a nonsense letter within your source, tried to compile it (and got an error, of course), reverted my change and compiled again, again no Tomas -- ANONYMNI PRIPOJENI K INTERNETU - bez registrace, zdarma, ihned! Pripojeni na cisle 971 200 111 z cele CR, v Praze navic na cisle 971 200 555. Uzivatelske jmeno "volny", heslo "volny". http://sluzby.volny.cz/product/dialup/anon/

Reply by email

Peter Vreman
to Unknown author
Show quoted text 16 lines
Hi, this problem appears under pure DOS 6.22 and in DOS under Windows 2003 too. It is enough to change New(pp) to New(p) and with compiling i got 'some' error "p doesn't exist". Then i change back New(p) to New(pp) and compiler shows this error "Type identifier expected" When i exit IDE to DOS and start again, compiler doesn't report this message. IDE 0.9.2 5.4.2004, compiler 1.9.3 With compiler version 1.0.10 is all O.K.

In almost all cases this is in bug in the compiler, it forgets to reset some variable when it is started. It doesn't popup in the command line compiler because that doesn't run multiple compiles using the same process

Reply by email