amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

[Login] [Registrieren] [Passwort vergessen?]

< Nächste MeldungVorige Meldung >
09.Mär.2024



Amiga E Compiler: E-VO 3.7.0
E-VO Amiga E Compiler ist ein Derivat des ursprünglichen Amiga E Compilers von Wouter van Oortmerssen. Er fügt viele neue Funktionen, Fehlerkorrekturen und Optimierungen hinzu, einschließlich Objekt-UNIONs, String-Merging, nicht-wortorientierte Objekte und vieles mehr (amiga-news.de berichtete).

Soeben hat Darren 'dmcoles' Coles die Version 3.7.0 mit folgenden Änderungen veröffentlicht:
  • Compiler sometimes produced garbage error message with an error at the very end of the file.
  • Reformatted the Amigaguide document to better fit in 80 columns.
  • added Arexx compile scripts
  • allow creating a new object directly into an object member, eg. self.a:=NEW self.a.method()
  • method table was not correctly initialised for objects declared as eg. DEF a:b OR DEF a[5]:ARRAY OF b
  • heap in compiler is allocated with MEMF_CLEAR in compiler to ensure all data in the exe is initialised to 0 and not contain random data from memory
  • calling a method on an array element of an object did did not calculate the correct address for the method.
  • compiler was creating 020 opcodes when accessing an array of objects
  • added NIL pointer checks when calling methods on array of objects
  • self variable was set incorrectly for methods declared with an exception handler
  • fix issue with wrong opcode being generated in this code DEF a DEF b:PTR TO LONG a:=[0,b[0]:=5] resulting in the value not being stored correctly
  • include textfield module
  • fix bug in reaction_lib with the freeClickTabs, freeChooserLabels and freeRadioButtons functions not looping through the list correctly.
  • add support for long branch 020 instruction.
  • fix invalid memory access when casting the result of a procedure call to an object
  • fix inconsistencies with SIZEOF command
  • fix error in branching code for the == operator
  • add missing listview module
  • add some extra functions in reaction_lib (openClass, openLibs, closeLibs, libDoGadgetMethodA)
  • added PSIZEOF operator
  • added ARRAYSIZE operator
  • added SelectFirst function
  • added debug symbols for methods
  • allow CONT and EXIT within SELECT statement
  • updated Rnd() function to be pure
  • flagged openw, opwns, boolgad, settopaz, sets, gets functions as not pure
  • added WARN TRUE/FALSE to enable/disable warnings
  • added Rol() and Ror() functions
  • the 020 variant of Mod() was not correctly used by the compiler and was also taking the parameters the wrong way around
  • added 020 variant of ListItem function
  • track line numbers for warnings
  • NOREGS option was not correctly parsed on methods
  • taking a reference to a method {obj.method} did not return the correct address
  • 1.3 startup code now updates stack pointers to allow stack space functions to return the correct values.
  • skip NameFromFH call on kick 1.3 meaning the compiler now works on that OS again
  • NOT operator was very broken (inconsistently applied and in some cases not applied at all)
  • Added EVO_3_7_0 define
  • casting and PTR TO PTR handling is improved and should now work in all use cases.
Direkter Download: evo.lha (673 KB) (dr)

[Meldung: 09. Mär. 2024, 21:16] [Kommentare: 0]
[Per E-Mail versenden]  [Druck-Version]  [ASCII-Version]
< Nächste MeldungVorige Meldung >

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.