Bug

2011-06-17
2013-04-25
  • Andrei Biruk

    Andrei Biruk - 2011-06-17

    After compiling I get an error:
    "list index out of bounds (47)"

    Jar-file then can not run, KEmulator error:
    "Fail to launch the MIDlet class: FW"
    In the mobile phone does not work either.

    What should I do?

     
  • Andrei Biruk

    Andrei Biruk - 2011-06-17

    И когда я попытался подключить к своему проекту Lib_JSR75i, происходит аварийное завершение компилятора. Но этот проект компилируется хорошо:

    Program NewProject;
    uses JSR75i;
    begin
    end.

     
  • Andrei Biruk

    Andrei Biruk - 2011-06-17

    And when I tried to connect to your project Lib_JSR75i, crashes the compiler. But the project compiles fine:

    Program NewProject;
    uses JSR75i;
    begin
    end.

     
  • YellowAfterlife

    YellowAfterlife - 2011-06-17

    Apparently one sector of your code (or file in project) is causing compiler (more specifically, packager) to fail.
    Unfortunately, provided information is not sufficient to tell exact reason of this error coming up.

    From what can be seen in provided .jar files, classes are built correctly, but are packed into jar in a rather odd way.
    After moving all classes into .jar root, and resources into res folder manually (as you may know, .jar is just a renamed .zip archive), your program seems to be working: http://solidfiles.com/d/61f9f/

    What you can do to fix this error, is compare the current (non-working) version to the last (working) backup.
    Apply changes to each file and recompile till you'll find the file that causes this error.
    Then go 'lower scale' (procedures and functions) to find code that causes error and either rewrite it or fix it (optionally, also post it here so it could be fixed if it is 'valid').

    Have a nice day.

     
  • Maxim

    Maxim - 2011-07-12

    there is one more crash when I try to use function log10, for example log10 (10)=-0.7…. (in a MidLet pascal), but in calculator log (10)=1 (it's not a natural logarithm). Please repair this problem.

     
  • Javier Santo Domingo

    Sorry but that's not a bug. As you can read in the documentation under the topic "The MIDletPascal Dialect \ Data types \ Real type":

    "The mobile devices do not have hardware support for real numbers, so MIDletPascal uses software emulation instead. In the Fixed-point mode the precision is lower, so expect aproximated values. For more precision enable the Floating-point mode."

    Also there is some more information in this two threads http://sourceforge.net/projects/midletpascal/forums/forum/1013750/topic/3651962?message=8249940 and http://sourceforge.net/projects/midletpascal/forums/forum/1013750/topic/3799651?message=8577555 where I wrote also about this. But may be the more realizing stuff is just reading the implementation of the compiler (specially in stdpas.c) relying in the stubs F.java and Real.java (you can find all of them in the SVN repository). Also, and besides it's an old topic you can find already many articles, posts, and stuff about this on a Google search, try for example "floating point J2ME".

    Finally, for enabling the Floating-point mode in your project, go to the Project Manager, and under Configurations select the one which you are using (may be "default"), and after that just toggle the value at the Real Numbers field.

    Thanks for you report anyway.

     
  • Steven Fang

    Steven Fang - 2011-08-08

    trunc(1720994.5)

    The result is -376158.

     
  • Javier Santo Domingo

    stevfun: I don't understand your post. Did you read the previous reply I made in this same thread? You must enable the Floating-point real numbers in your current configuration (under Project Manager \ Configurations) if you want Floating-point precision.

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks