Version 1.00.0 released

Announcements about new releases and updates.
Post Reply
dkl
Site Admin
Posts: 3235
Joined: Jul 28, 2005 14:45
Location: Germany

Version 1.00.0 released

Post by dkl »

Hello!

This is the next release of FreeBASIC -- version 1.00.0! Has it really been 10 years since v1ctor's first announcement? FB is about to start into its second decade...

And with this new release, FB gains 64bit support. There now is a 64bit version of the language, and you can use it by testing the new Win64 or GNU/Linux x86_64 ports of FB. The new ports are based on the FB compiler's C backend. Behind the scenes, it uses gcc to generate the x86_64 assembly code, as fbc does not have its own x86_64 ASM backend.

In FB 64bit, pointers and INTEGERs are changed to 64bit. They are still 32bit in FB 32bit though. In other words, the size of pointers and INTEGERs, the precision of integer math operations, and the size limit for arrays and strings, varies depending on whether you compile your code for 32bit or 64bit. However, FB's BYTE (8bit), SHORT (16bit), LONG (32bit) and LONGINT (64bit) data types are the same in all versions.

There also is some support for compiling for ARM and AArch64 now, using the C backend and gcc. If you happen to have a gcc toolchain which targets ARM, you can probably also use it with fbc. Besides that, forum members D.J.Peters and TJF have been working on native ARM FB versions.

What else is new?
  • Greatly improved overload resolution
  • Dynamic arrays inside UDTs (for example: array(ANY) AS INTEGER)
  • New syntax for declaring dynamic arrays with certain amount of dimensions but no initial bounds: dim array1(any), array2(any, any)
  • All function results can now be ignored at the call site
  • BYVAL AS STRING is now working properly
  • NEW/DELETE now work with STRING
  • Operator [] overloading
  • Len() can now be overloaded for UDTs
  • Thread-safe version of the FB graphics library (libfbgfxmt)
As always, there's a huge number of compiler and runtime bug fixes and improvements. Please check the included changelog.txt for the full list, and thanks to everyone who found and reported bugs and contributed to the development of patches and header updates!

Windows Binaries Linux Binaries DOS Binaries Documentation Source Code All the downloads are hosted over at SourceForge.


Binary build information
  • The win32/win64 packages built with MinGW-w64 toolchains: mingw-w64 v3 git a33358073306e7591433cadc7c5bd005cb20e148, gcc 4.9.1. The entire GCC toolchains are available at Tools/MinGW-w64.
  • The win32-mingw-org package was built with a MinGW.org toolchain: mingwrt 4.0.3, gcc 4.8.1
  • The DOS packages were built with DJGPP: DJGPP 2.04, gcc 4.9.1
  • The Linux-x86 package was built on OpenSUSE 13.1 i586, gcc 4.8.1
  • The Linux-x86_64 package was built on OpenSUSE 13.1 x86_64, gcc 4.8.1
Post Reply