Sign in Join

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

Mailing lists / fpc-devel / 2011-12

New FPC JVM snapshot: Android support

31 messages · 9 people · –

Reply by email Subscribe to this list Your subscription

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

Jonas Maebe

Hi,

A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM

The main new feature is full fledged support for Android/Dalvik, including a Pascal translation of the Android SDK classes. To compile for Android rather than for the Java VM, simply use the -Tandroid command line parameter. The compiler will still generate Java class files, but these can then be translated into Dalvik code by the Android SDK tools just like any javac-compiled class files.

Some other, minor, changes:
* the compiler now properly cleans up the intermediate .j files (Jasmin "Java assembler" files) when not using -a
* the JVM compiler and RTL (both for Java and Android) can now be built using the top-level FPC Makefile
* fixed modifying certain kinds of var/out parameters from inside nested routines
* fixed a bug triggered by some kind of nested try/except statements
* -Ctcompactintarrayinit command line option to create more compact code for initializing typed array constants. The reason is that the JVM class file format does not support array constants, so such initializations have to be encoded as explicit code sequences in the class init code. This class init code is however limited to 64KB of bytecode, and this can be exceeded in case you have many or large initialized arrays. This parameters uses alternate code that is potentially slower, but much more compact than the default
* fixed a bug in copy(unicodestring,x,y) when x0

Jonas

PS: I've put the Android RTL source files in rtl/android/jvm, so that there will be no conflicts when adding support for Android/ARM later.

Reply by email

Andrew Haines
to Jonas Maebe
Jonas Maebe wrote 5 lines
Hi, A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM The main new feature is full fledged support for Android/Dalvik, including a Pascal translation of the Android SDK classes. To compile for Android rather than for the Java VM, simply use the -Tandroid command line parameter. The compiler will still generate Java class files, but these can then be translated into Dalvik code by the Android SDK tools just like any javac-compiled class files.

This is amazing, thank you very much for your work!

Andrew

Reply by email

ik
to Jonas Maebe: A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM The main…

I'm trying to build it from the svn repo:
http://svn.freepascal.org/svn/fpc/branches/jvmbackend/ . I get the following error:

-------------------------
$ make CROSSOPT="-O2 -g" CPU_TARGET=jvm OS_TARGET=java all make: -iVSPTPSOTO: Command not found
make: -iSP: Command not found
make: -iTP: Command not found
make: -iSO: Command not found
make: -iTO: Command not found
make compiler_cycle RELEASE=1
make[1]: -iVSPTPSOTO: Command not found
make[1]: Entering directory `/home/ik/projects/foss/fpc/jvmbackend' make[1]: -iSP: Command not found
make[1]: -iTP: Command not found
make[1]: -iSO: Command not found
make[1]: -iTO: Command not found
make -C compiler cycle
make[2]: -iVSPTPSOTO: Command not found
make[2]: Entering directory `/home/ik/projects/foss/fpc/jvmbackend/compiler' make[2]: -iSP: Command not found
make[2]: -iTP: Command not found
make[2]: -iSO: Command not found
make[2]: -iTO: Command not found
make OS_TARGET= CPU_TARGET= CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 rtlclean rtl
make[3]: Entering directory `/home/ik/projects/foss/fpc/jvmbackend/compiler' make -C clean
make: Entering an unknown directory
make: *** clean: No such file or directory. Stop. make: Leaving an unknown directory
make[3]: *** [rtlclean] Error 2
make[3]: Leaving directory `/home/ik/projects/foss/fpc/jvmbackend/compiler' make[2]: *** [cycle] Error 2
make[2]: Leaving directory `/home/ik/projects/foss/fpc/jvmbackend/compiler' make[1]: *** [compiler_cycle] Error 2
make[1]: Leaving directory `/home/ik/projects/foss/fpc/jvmbackend' make: *** [base.build-stamp.jvm-java] Error 2

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

Arch Linux, 64 bit. I have jdk7-openjdk and jre7-openjdk

Have anyone encountered something like that as well ?

Ido

Jonas Maebe wrote 39 lines
Hi, A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM The main new feature is full fledged support for Android/Dalvik, including a Pascal translation of the Android SDK classes. To compile for Android rather than for the Java VM, simply use the -Tandroid command line parameter. The compiler will still generate Java class files, but these can then be translated into Dalvik code by the Android SDK tools just like any javac-compiled class files. Some other, minor, changes: * the compiler now properly cleans up the intermediate .j files (Jasmin "Java assembler" files) when not using -a * the JVM compiler and RTL (both for Java and Android) can now be built using the top-level FPC Makefile * fixed modifying certain kinds of var/out parameters from inside nested routines * fixed a bug triggered by some kind of nested try/except statements * -Ctcompactintarrayinit command line option to create more compact code for initializing typed array constants. The reason is that the JVM class file format does not support array constants, so such initializations have to be encoded as explicit code sequences in the class init code. This class init code is however limited to 64KB of bytecode, and this can be exceeded in case you have many or large initialized arrays. This parameters uses alternate code that is potentially slower, but much more compact than the default * fixed a bug in copy(unicodestring,x,y) when x0 Jonas PS: I've put the Android RTL source files in rtl/android/jvm, so that there will be no conflicts when adding support for Android/ARM later._______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Andrew Haines
to ik
ik wrote 13 lines
I'm trying to build it from the svn repo: http://svn.freepascal.org/svn/fpc/branches/jvmbackend/ . I get the following error: ------------------------- $ make CROSSOPT="-O2 -g" CPU_TARGET=jvm OS_TARGET=java all make: -iVSPTPSOTO: Command not found make: -iSP: Command not found make: -iTP: Command not found make: -iSO: Command not found make: -iTO: Command not found make compiler_cycle RELEASE=1 make[1]: -iVSPTPSOTO: Command not found

I've seen these messages before when fpc or ppc386/ppcx64 is not in the $PATH

Regards,

Andrew

Reply by email

ik
to Andrew Haines
Andrew Haines wrote 18 lines
On 12/12/11 14:55, ik wrote: > I'm trying to build it from the svn repo: > http://svn.freepascal.org/svn/fpc/branches/jvmbackend/ . > I get the following error: > > ------------------------- > $ make CROSSOPT="-O2 -g" CPU_TARGET=jvm OS_TARGET=java all > make: -iVSPTPSOTO: Command not found > make: -iSP: Command not found > make: -iTP: Command not found > make: -iSO: Command not found > make: -iTO: Command not found > make compiler_cycle RELEASE=1 > make[1]: -iVSPTPSOTO: Command not found I've seen these messages before when fpc or ppc386/ppcx64 is not in the $PATH
$ whereis ppcx64
ppcx64: /usr/bin/ppcx64
$ whereis fpc
fpc: /usr/bin/fpc /etc/fpc.cfg /usr/lib/fpc

it's v2.5.1 (2.6.0 rc)

Show quoted text 5 lines
Regards, Andrew

Ido

_______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Jonas Maebe
to ik
ik wrote 16 lines
On Mon, Dec 12, 2011 at 21:58, Andrew Haines wrote: > On 12/12/11 14:55, ik wrote: >> make[1]: -iVSPTPSOTO: Command not found > > I've seen these messages before when fpc or ppc386/ppcx64 is not in the > $PATH > $ whereis ppcx64 ppcx64: /usr/bin/ppcx64 $ whereis fpc fpc: /usr/bin/fpc /etc/fpc.cfg /usr/lib/fpc it's v2.5.1 (2.6.0 rc)

It nevertheless means that the Makefile cannot find the "fpc" binary. You can try explicitly specifying the starting compiler by adding FPC=/usr/bin/ppcx64

Jonas

Reply by email

Sven Barth
to Jonas Maebe: A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM The main…
"Jonas Maebe" wrote
The main new feature is full fledged support for Android/Dalvik,

including a Pascal translation of the Android SDK classes. To compile for Android rather than for the Java VM, simply use the -Tandroid command line parameter. The compiler will still generate Java class files, but these can then be translated into Dalvik code by the Android SDK tools just like any javac-compiled class files.

It's seems that you have beat me here :)

I have continued to work on this as well three or four weeks ago, but I got stuck with a ClassDefNotFoundException when implementing a test application and tried to find out were the error was. I'll retry with your new snapshot (hopefully this weekend) and report back.

Regards,
Sven

Reply by email

ik
to Jonas Maebe: It nevertheless means that the Makefile cannot find the "fpc" binary. You can try…
Jonas Maebe wrote 24 lines
On 12 Dec 2011, at 21:04, ik wrote: > On Mon, Dec 12, 2011 at 21:58, Andrew Haines wrote: > >> On 12/12/11 14:55, ik wrote: >>> make[1]: -iVSPTPSOTO: Command not found >> >> I've seen these messages before when fpc or ppc386/ppcx64 is not in the >> $PATH >> > > $ whereis ppcx64 > ppcx64: /usr/bin/ppcx64 > > $ whereis fpc > fpc: /usr/bin/fpc /etc/fpc.cfg /usr/lib/fpc > > it's v2.5.1 (2.6.0 rc) It nevertheless means that the Makefile cannot find the "fpc" binary. You can try explicitly specifying the starting compiler by adding FPC=/usr/bin/ppcx64

Thanks, that works.

Show quoted text 6 lines
Jonas_______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Ido

Reply by email

Jonas Maebe
to Sven Barth: including a Pascal translation of the Android SDK classes. To compile for Android rather…
Sven Barth wrote
I have continued to work on this as well three or four weeks ago, but I got stuck with a ClassDefNotFoundException when implementing a test application and tried to find out were the error was.

Most FPC code will depend on the RTL, so make sure that you create a .jar file containing all FPC RTL class files (both those in rtl/units/jvm-android and in rtl/units/jvm-android/org/freepascal/rtl) and add it to your Android project in Eclipse (or pass it to dx if you are manually creating the .apk file).

Jonas

Reply by email

Sven Barth
to Jonas Maebe
"Jonas Maebe" wrote 5 lines
On 12 Dec 2011, at 21:15, Sven Barth wrote: > I have continued to work on this as well three or four weeks ago, but I

got

> stuck with a ClassDefNotFoundException when implementing a test

application

> and tried to find out were the error was. Most FPC code will depend on the RTL, so make sure that you create a .jar

file containing all FPC RTL class files (both those in rtl/units/jvm-android and in rtl/units/jvm-android/org/freepascal/rtl) and add it to your Android project in Eclipse (or pass it to dx if you are manually creating the .apk file).

It wasn't the RTL. It complained about a class I had just added in the same unit for which the corresponding class file was generated as well. As said I'll retest and report back.

Regards,
Sven

Reply by email

Mattias Gaertner
to ik: $ whereis ppcx64 ppcx64: /usr/bin/ppcx64 $ whereis fpc fpc: /usr/bin/fpc /etc/fpc.cfg…
Show quoted text 22 lines
On Mon, Dec 12, 2011 at 21:58, Andrew Haines wrote: > On 12/12/11 14:55, ik wrote: > > I'm trying to build it from the svn repo: > > http://svn.freepascal.org/svn/fpc/branches/jvmbackend/ . > > I get the following error: > > > > ------------------------- > > $ make CROSSOPT="-O2 -g" CPU_TARGET=jvm OS_TARGET=java all > > make: -iVSPTPSOTO: Command not found > > make: -iSP: Command not found > > make: -iTP: Command not found > > make: -iSO: Command not found > > make: -iTO: Command not found > > make compiler_cycle RELEASE=1 > > make[1]: -iVSPTPSOTO: Command not found > > I've seen these messages before when fpc or ppc386/ppcx64 is not in the > $PATH > $ whereis ppcx64

"whereis" searches in more places than PATH. Use "which" instead:

which ppcx64

Mattias

Reply by email

ik
to Mattias Gaertner
Mattias Gaertner wrote 30 lines
On Mon, 12 Dec 2011 22:04:55 +0200 ik wrote: > On Mon, Dec 12, 2011 at 21:58, Andrew Haines wrote: > > > On 12/12/11 14:55, ik wrote: > > > I'm trying to build it from the svn repo: > > > http://svn.freepascal.org/svn/fpc/branches/jvmbackend/ . > > > I get the following error: > > > > > > ------------------------- > > > $ make CROSSOPT="-O2 -g" CPU_TARGET=jvm OS_TARGET=java all > > > make: -iVSPTPSOTO: Command not found > > > make: -iSP: Command not found > > > make: -iTP: Command not found > > > make: -iSO: Command not found > > > make: -iTO: Command not found > > > make compiler_cycle RELEASE=1 > > > make[1]: -iVSPTPSOTO: Command not found > > > > I've seen these messages before when fpc or ppc386/ppcx64 is not in the > > $PATH > > > > $ whereis ppcx64 "whereis" searches in more places than PATH. Use "which" instead: which ppcx64

It provide the same answer. It seems that only the jvm branch have some problems with $PATH . but I was able to solve it :)

Thanks,

Mattias

Ido

_______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Sven Barth
to Jonas Maebe: A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM The main…
Jonas Maebe wrote 5 lines
Hi, A new FPC JVM snapshot has been put online at http://wiki.freepascal.org/FPC_JVM The main new feature is full fledged support for Android/Dalvik, including a Pascal translation of the Android SDK classes. To compile for Android rather than for the Java VM, simply use the -Tandroid command line parameter. The compiler will still generate Java class files, but these can then be translated into Dalvik code by the Android SDK tools just like any javac-compiled class files.

So, I have now tested your new snapshot (nice that "make" finally works in the top level ^^) and I've got the same error as before. The error occurs when I try to instantiate a custom class of mine that implements an (inner) interface from the Android SDK. I have tested the following variations:

* implement a inner interface
* implement a "global" interface
* descend from TObject
* descend from JLObject
* implement in a nested class
* implement in a "global" class

All lead to the same error: ClassDefNotFoundException (and the class that's tried to be created) when instantiating the class.

I have attached an example containing some of the above mentioned variatons, a manifest file and a Makefile which you'll need to adjust to your setup. Then a "make prepare genrjava all" should (in theory) suffice to create a unsigned apk which you can sign by "make signedapk". This can then be installed using "make install" if you have an emulator (or device) running.

Regards,
Sven

Reply by email

Jonas Maebe
to Sven Barth
Sven Barth wrote
So, I have now tested your new snapshot (nice that "make" finally works in the top level ^^) and I've got the same error as before. The error occurs when I try to instantiate a custom class of mine that implements an (inner) interface from the Android SDK.

Fixed!

I have attached an example containing some of the above mentioned variatons, a manifest file and a Makefile which you'll need to adjust to your setup. Then a "make prepare genrjava all" should (in theory) suffice to create a unsigned apk which you can sign by "make signedapk".

The res directory was missing from the archive, but I did it via an Eclipse project.

Jonas

Reply by email

Sven Barth
to Jonas Maebe
Jonas Maebe wrote 8 lines
On 17 Dec 2011, at 16:15, Sven Barth wrote: > So, I have now tested your new snapshot (nice that "make" finally works in the top level ^^) and I've got the same error as before. > The error occurs when I try to instantiate a custom class of mine that implements an (inner) interface from the Android SDK. Fixed!

Nice :D Thank you!

Btw: can it be that not all Makefiles have been regenerated? I issued a "make clean" with cpu and os set to jvm and android respectively and in $fpcdir/utils the process complained that jvm-android is not supported. I compiled fpcmake and regenerated all makefiles and now it works.

> I have attached an example containing some of the above mentioned variatons, a manifest file and a Makefile which you'll need to adjust to your setup. Then a "make prepare genrjava all" should (in theory) suffice to create a unsigned apk which you can sign by "make signedapk". The res directory was missing from the archive, but I did it via an Eclipse project.

Oops. There had to be something that I missed.

As I personally am not a big fan of Eclipse I have preferred to build my own small Makefile for that stuff ^^

Regards,
Sven

Reply by email

Jonas Maebe
to Sven Barth
Sven Barth wrote
Btw: can it be that not all Makefiles have been regenerated? I issued a "make clean" with cpu and os set to jvm and android respectively and in $fpcdir/utils the process complained that jvm-android is not supported. I compiled fpcmake and regenerated all makefiles and now it works.

Only the makefiles relevant to the JVM target have been regenerated. If "make clean" with CPU_TARGET=jvm tries to clean the utils directory, that's an error in the main Makefile I have to fix.

As I personally am not a big fan of Eclipse I have preferred to build my own small Makefile for that stuff ^^

I found it easier to use Eclipse than to figure out all command line tools that I had to use :)

Jonas

Reply by email

Sven Barth
to Jonas Maebe
Jonas Maebe wrote 7 lines
On 17 Dec 2011, at 20:25, Sven Barth wrote: > Btw: can it be that not all Makefiles have been regenerated? I issued a "make clean" with cpu and os set to jvm and android respectively and in $fpcdir/utils the process complained that jvm-android is not supported. I compiled fpcmake and regenerated all makefiles and now it works. Only the makefiles relevant to the JVM target have been regenerated. If "make clean" with CPU_TARGET=jvm tries to clean the utils directory, that's an error in the main Makefile I have to fix.

Then consider it a bug, because the makefile tried exactly this :)

> As I personally am not a big fan of Eclipse I have preferred to build my own small Makefile for that stuff ^^ I found it easier to use Eclipse than to figure out all command line tools that I had to use :)

Yes, that was indeed a bit complicated, but this way I might be able to use the JVM compiler in Lazarus easily for the creation of Android application (though Lazarus first needs to learn about the "unicodestrings" modeswitch, and maybe external classes as well -.- )

Regards,
Sven

Reply by email

Jonas Maebe
to Sven Barth
Sven Barth wrote 5 lines
On 18.12.2011 00:01, Jonas Maebe wrote: > > Only the makefiles relevant to the JVM target have been regenerated. If "make clean" with CPU_TARGET=jvm tries to clean the utils directory, that's an error in the main Makefile I have to fix. Then consider it a bug, because the makefile tried exactly this :)

I'll look into it.

Yes, that was indeed a bit complicated, but this way I might be able to use the JVM compiler in Lazarus easily for the creation of Android application (though Lazarus first needs to learn about the "unicodestrings" modeswitch, and maybe external classes as well -.- )

And final fields.

Jonas

Reply by email

Maxim Ganetsky
to Jonas Maebe

18.12.2011 16:45, Jonas Maebe пишет:

Show quoted text 14 lines
On 18 Dec 2011, at 13:22, Sven Barth wrote: > On 18.12.2011 00:01, Jonas Maebe wrote: >> >> Only the makefiles relevant to the JVM target have been regenerated. If "make clean" with CPU_TARGET=jvm tries to clean the utils directory, that's an error in the main Makefile I have to fix. > > Then consider it a bug, because the makefile tried exactly this :) I'll look into it. > Yes, that was indeed a bit complicated, but this way I might be able to use the JVM compiler in Lazarus easily for the creation of Android application (though Lazarus first needs to learn about the "unicodestrings" modeswitch, and maybe external classes as well -.- ) And final fields.

Please create bug reports for these missing Lazarus features.

Best regards, Maxim Ganetsky

Reply by email

Paul Ishenin
to Mattias Gaertner

20.12.2011 7:00, Mattias Gaertner пишет:

Show quoted text 9 lines
On Sun, 18 Dec 2011 13:45:07 +0100 Jonas Maebe wrote: > > On 18 Dec 2011, at 13:22, Sven Barth wrote: > [...] >> Yes, that was indeed a bit complicated, but this way I might be able to use the JVM compiler in Lazarus easily for the creation of Android application (though Lazarus first needs to learn about the "unicodestrings" modeswitch, What's that?

A modeswitch introduced in the JVM branch to turn the string type to unicodestring (similar to {$H+} turns string to ansistring).

Best regards,
Paul Ishenin

Reply by email

Felipe Monteiro de Carvalho
to Paul Ishenin
Paul Ishenin wrote
Final methods can't be overriden in the descendants. But what are final fields for?

I think they are the way to write a constant in Java. Because they have no procedural elements, they need to work around with class elements to do everything.

Felipe Monteiro de Carvalho

Reply by email

Paul Ishenin
to Felipe Monteiro de Carvalho

20.12.2011 10:47, Felipe Monteiro de Carvalho пишет:

Show quoted text 7 lines
On Tue, Dec 20, 2011 at 1:00 AM, Paul Ishenin wrote: > Final methods can't be overriden in the descendants. But what are final > fields for? I think they are the way to write a constant in Java. Because they have no procedural elements, they need to work around with class elements to do everything.

FPC classes support internal constants so I don't believe Jonas would add another syntax element for already existent feature.

Best regards,
Paul Ishenin

Reply by email

Alexander Shishkin
to Paul Ishenin: Final methods can't be overriden in the descendants. But what are final fields for? Paul…

20.12.2011 4:00, Paul Ishenin пишет:

Show quoted text 15 lines
18.12.2011 20:45, Jonas Maebe wrote: > And final fields. Final methods can't be overriden in the descendants. But what are final fields for? Best regards, Paul Ishenin _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

It`s something like writeable constant, but writeable only in constructor.

Reply by email

Mattias Gaertner
to Alexander Shishkin
Show quoted text 10 lines
20.12.2011 4:00, Paul Ishenin пишет: > 18.12.2011 20:45, Jonas Maebe wrote: > >> And final fields. > > Final methods can't be overriden in the descendants. But what are final > fields for? > > It`s something like writeable constant, but writeable only in constructor.

Can someone explain the pascal syntax?

Mattias

Reply by email

Sven Barth
to Mattias Gaertner
Mattias Gaertner wrote 15 lines
On Tue, 20 Dec 2011 12:51:29 +0400 Alexander Shishkin wrote: > 20.12.2011 4:00, Paul Ishenin пишет: >> 18.12.2011 20:45, Jonas Maebe wrote: >> >>> And final fields. >> >> Final methods can't be overriden in the descendants. But what are final >> fields for? >> >> > It`s something like writeable constant, but writeable only in constructor. Can someone explain the pascal syntax?

According to example classes (JAImage, JAFGlyphJustificationInfo) in http://svn.freepascal.org/cgi-bin/viewvc.cgi/branches/jvmbackend/rtl/java/jdk15.inc?revision=19030&view=markup it is like the following:

TFoo = class
   final var
     fField1: Integer;
     fField2: Integer;
   final class var
     fClassField1: Integer;
     fClassField2: Integer;
end;

Please note: Every field (final or not) can be followed by a "external name 'FieldName'" clause if the class is "external" as well (you can see this in the mentioned example classes)

You also might want to read this:
http://wiki.freepascal.org/FPC_JVM/Language#New_language_features

Regards,
Sven

Reply by email

Jonas Maebe
to Sven Barth
Sven Barth wrote

Looking over the Lazarus commit log, I noticed a small error on that page: the directive for pointer arithmetic is called {$pointermath on/ off}, not {$modeswitch cs_pointermath} (corrected in the mean time).

That switch is not specific to the JVM branch though: http://wiki.freepascal.org/User_Changes_2.6.0#The_POINTERARITHMETICS_mode_switch_has_been_replaced_with_the_POINTERMATH_directive

Jonas

Reply by email

Mattias Gaertner
to Jonas Maebe
Show quoted text 10 lines
On 20 Dec 2011, at 10:05, Sven Barth wrote: > You also might want to read this: http://wiki.freepascal.org/FPC_JVM/Language#New_language_features Looking over the Lazarus commit log, I noticed a small error on that page: the directive for pointer arithmetic is called {$pointermath on/ off}, not {$modeswitch cs_pointermath} (corrected in the mean time). That switch is not specific to the JVM branch though: http://wiki.freepascal.org/User_Changes_2.6.0#The_POINTERARITHMETICS_mode_switch_has_been_replaced_with_the_POINTERMATH_directive

Thanks for the hint.
I changed that in Lazarus.

Maybe the JVM wiki should be updated too.

Mattias

Reply by email

Jonas Maebe
to Mattias Gaertner
Mattias Gaertner wrote 14 lines
On Tue, 20 Dec 2011 11:12:12 +0100 Jonas Maebe wrote: > Looking over the Lazarus commit log, I noticed a small error on that > page: the directive for pointer arithmetic is called {$pointermath > on/ > off}, not {$modeswitch cs_pointermath} (corrected in the mean time). > > That switch is not specific to the JVM branch though: http://wiki.freepascal.org/User_Changes_2.6.0#The_POINTERARITHMETICS_mode_switch_has_been_replaced_with_the_POINTERMATH_directive Thanks for the hint. I changed that in Lazarus. Maybe the JVM wiki should be updated too.

It has been updated (see the "corrected in the mean time" above). You may have to force-reload the page to see the change.

Jonas

Reply by email