Commit graph

2204 commits

Author SHA1 Message Date
gambas
b94176c704 Don't handle VERSION file in the compiler. Only the IDE supports that feature now.
[COMPILER]
* NEW: Don't handle VERSION file in the compiler. Only the IDE supports that feature now.
2021-06-23 18:51:44 +02:00
gambas
51068e17bd Class.Symbols and Class[] now correctly ignore symbol table entries overriden by inheritance.
[INTERPRETER]
* BUG: Class.Symbols and Class[] now correctly ignore symbol table entries overriden by inheritance.
2021-06-20 00:09:36 +02:00
gambas
6e5c42939a Fix some memory leaks introduced by the last commit.
[GB.JIT]
* BUG: Fix some memory leaks introduced by the last commit.
2021-06-18 14:33:40 +02:00
gambas
78ad25231b JIT compiler support for embedded array and structures variables.
[INTERPRETER]
* NEW: JIT compiler support for embedded array and structures variables.

[GB.JIT]
* NEW: JIT compiler support for embedded array and structures variables.
2021-06-18 04:33:42 +02:00
gambas
d5105c8349 Remove an extra newline at the end of the "non freed allocation" warning message.
[INTERPRETER]
* BUG: Remove an extra newline at the end of the "non freed allocation" warning message.
2021-06-16 01:54:12 +02:00
gambas
e6d9faad0a Allow local static variables to declare embedded arrays or structures like global variables.
[COMPILER]
* NEW: Allow local static variables to declare embedded arrays or structures like global variables.
2021-06-15 17:06:57 +02:00
gambas
78191ced69 Remove the new Size, DataSize and StaticSize properties of the Class class. Use SizeOf() instead of DataSize.
[INTERPRETER]
* NEW: Remove the new Size, DataSize and StaticSize properties of the Class class. Use SizeOf() instead of DataSize.
2021-06-14 22:37:53 +02:00
gambas
0c30eda13f The SizeOf() function now can return the data size of a class or a structure.
[INTERPRETER]
* NEW: The SizeOf() function now can return the data size of a class or a structure.
2021-06-14 22:36:57 +02:00
gambas
d99609f2d9 Add Class.DataSize property, and make Class.Size returns the full size of an object of that class.
[INTERPRETER]
* NEW: Class.Size now returns the full size allocated for an object of that class.
* NEW: Class.DataSize is a new property that returns the size of the dynamic data allocated for that class.
2021-06-14 19:30:15 +02:00
gambas
a7d7135112 Class.Size and Class.StaticSize are two new properties that return the size of the dynamic and static data of a class.
[INTERPRETER]
* NEW: Class.Size and Class.StaticSize are two new properties that return the size of the dynamic and static data of a class.
2021-06-14 19:20:36 +02:00
gambas
3d41de69d4 Fix Eval() and fix error management on disabled fast functions.
[INTERPRETER]
* BUG: Fix Eval().
* BUG: Fix error management on disabled fast functions.
2021-06-12 12:02:39 +02:00
gambas
b24029f722 Object.SizeOf() on embedded arrays now returns the size of the array, and not the size of the temporary object created for accessing the array.
[INTERPRETER]
* NEW: Object.SizeOf() on embedded arrays now returns the size of the array, and not the size of the temporary object created for accessing the array.
2021-06-12 02:02:44 +02:00
gambas
06e2373dd5 Fix memory leaks in debugger expression evaluation routines.
[INTERPRETER]
* BUG: Fix memory leaks in debugger expression evaluation routines.

[GB.DEBUG]
* BUG: Fix memory leaks in debugger expression evaluation routines.
* NEW: The debugger now prints the reference count next to object references.
* BUG: A null pointer is printed as "NULL" now.
2021-06-12 01:39:52 +02:00
gambas
cb8c0a3f43 Implement and fix assignation of structures and embedded arrays.
[INTERPRETER]
* NEW: Implement and fix assignation of structures and embedded arrays.
2021-06-11 19:25:50 +02:00
gambas
e1202bad7e Array.Read() and Array.Write() now check their stream argument instead of crashing if it is NULL.
[INTERPRETER]
* BUG: Array.Read() and Array.Write() now check their stream argument instead of crashing if it is NULL.
2021-06-10 02:27:09 +02:00
gambas
c42a80d20f Don't try to call the "before fork" library handler if the library is not yet loaded.
[INTERPRETER]
* BUG: Don't try to call the "before fork" library handler if the library is not yet loaded.
2021-06-07 23:53:16 +02:00
gambas
49dc9b051b Fix JIT function calls and add Jit.Enabled property.
[INTERPRETER]
* BUG: Calling a JIT function from a class having a ':' in its name works correctly now.
* NEW: Jit.Enabled is a new property that allows to temporarily deactivate the JIT compiler.
2021-06-05 14:29:58 +02:00
gambas
67d266d79b Call an optional fork helper in each loaded component libraries before starting a task.
[INTERPRETER]
* NEW: Call an optional fork helper in each loaded component libraries before starting a task.
2021-06-05 03:11:54 +02:00
gambas
2c73795c31 Take ':' inside identifiers into account by replacing them by '$'.
[GB.JIT]
* BUG: Take ':' inside identifiers into account by replacing them by '$', which is allowed in C identifiers.
2021-06-04 14:28:05 +02:00
gambas
ac52cdc447 The first time an watched expression has a value does not trigger a breakpoint anymore.
[GB.DEBUG]
* NEW: The first time an watched expression has a value does not trigger a breakpoint anymore.
2021-06-04 14:27:53 +02:00
gambas
e0434b8814 Fix compilation of local static identifier access.
[COMPILER]
* BUG: Fix compilation of local static identifier access.
2021-06-02 09:59:11 +02:00
gambas
912d228f44 Remove a debugging message.
[COMPILER]
* BUG: Remove a debugging message.
2021-06-02 02:33:40 +02:00
gambas
fdf445042b Fix initialization of static local variables.
[COMPILER]
* BUG: Fix initialization of static local variables.
2021-06-02 00:04:15 +02:00
gambas
5a273a8494 Disable debugging messages.
[COMPILER]
* BUG: Disable debugging messages.
2021-06-01 23:49:31 +02:00
gambas
8a8b470c5a 'STATIC' keyword can be used instead of 'DIM' for declaring local static variables.
[COMPILER]
* NEW: 'STATIC' keyword can be used instead of 'DIM' for declaring local static variables.

[INTERPRETER]
* NEW: Support for local static variables.

[GB.DEBUG]
* NEW: Support for local static variables.
2021-06-01 23:12:55 +02:00
gambas
e3af76ce15 Fix management of watched expressions.
[GB.DEBUG]
* BUG: Fix comparison routine of watched expressions.
* BUG: Initialize the stack context correctly when checking watched expressions.
2021-06-01 18:14:54 +02:00
gambas
e4dffc8ae8 And, Or and Xor operators now correctly raise an error if they deal with Single or Float values.
[INTERPRETER]
* BUG: And, Or and Xor operators now correctly raise an error if they deal with Single or Float values.
* OPT: And, Or and Xor operators should be a bit faster.
2021-05-31 23:25:03 +02:00
gambas
65eff9e732 The debugger now can watch expressions, and stop when their value changes.
[INTERPRETER]
* NEW: Support for expression watches.

[GB.DEBUG]
* NEW: Add new command for watching expressions, i.e. stopping the debugger when the value of an expressions changes.
2021-05-24 15:34:37 +02:00
gambas
af0509e372 Fix deletion of empty directories.
[CONFIGURATION]
* BUG: Fix deletion of empty directories.
2021-05-22 16:04:41 +02:00
gambas
3c64df79b7 Namespace support continued.
[COMPILER]
* NEW: Add the '-n' option that defines a default namespace for exported classes.
* BUG: The generation of '.info' file now uses the exported name of classes.
* NEW: 'EXPORT TO <Namespace>' exports the class as '<NameSpace>:<class name>'.
* NEW: 'EXPORT TO DEFAULT' now exports to the global namespace.
2021-05-21 16:48:59 +02:00
gambas
3438a07f23 Don't use 'rmdir --ignore-fail-on-non-empty' again.
[CONFIGURATION]
* NEW: Don't use 'rmdir --ignore-fail-on-non-empty' again.
2021-05-20 16:43:24 +02:00
gambas
0e78042e07 Initial implementation of class namespaces.
[DEVELOPMENT ENVIRONMENT]
* NEW: Update French translation.
* NEW: Support of the new '.list' file format.
* NEW: Support of the new EXPORT AS syntax.
* NEW: Update error messages.

[COMPILER]
* NEW: EXPORT AS is a new syntax for exporting a class with a specific name that can include a namespace.
* NEW: New header file to start sharing reader code with the 'gb.eval' component.
* NEW: Class names can include a colon. The part before the colon is assumed to be a namespace.

[INTERPRETER]
* NEW: Classes exported in a namespace are now declared both in the global symbol table and in the local symbol table of their component.
* NEW: Class names are now allocated inside the symbol tables, and not in the class objects anymore.

[GB.EVAL]
* NEW: Share some reader code with the compiler.
2021-05-18 02:12:33 +02:00
gambas
da94bbabf3 'h' can be the prefix of any object datatype, even those which already has a prefix.
[COMPILER]
* NEW: 'h' can be the prefix of any object datatype, even those which already has a prefix.
2021-05-07 22:26:53 +02:00
gambas
fbff4a7ee9 New compilation option to check variable prefixes against their datatype, and print a warning if they do not match.
[COMPILER]
* NEW: Set compilation flags with the '-f' generic option now.
* NEW: New compilation option to check variable prefixes against their datatype, and print a warning if they do not match.
2021-05-07 19:20:30 +02:00
gambas
3b8b6b5315 Support for 'gb.gtk3.opengl' component.
[GB.GUI.OPENGL]
* NEW: Support for 'gb.gtk3.opengl' component.
2021-05-07 19:20:04 +02:00
gambas
ae3ff60eef Fix compilation on BSD.
[INTERPRETER]
* BUG: Fix compilation on BSD systems.

[GB.FORM]
* NEW: Search for icon themes in '/usr/local' for BSD systems.
2021-05-01 00:28:19 +02:00
gambas
f970a37ed8 Fix a string memory leak in error management.
[INTERPRETER]
* BUG: Fix a string memory leak in error management.
2021-04-30 21:01:14 +02:00
gambas
b3cbe0e4a0 Abort JIT compilation before executing the QUIT instruction.
[INTERPRETER]
* BUG: Abort JIT compilation before executing the QUIT instruction.
2021-04-30 00:34:50 +02:00
gambas
4ef3334245 WAIT with a positive value should not block anymore in some case.
[INTERPRETER]
* BUG: WAIT with a positive value should not block anymore in some case.
2021-04-28 23:44:16 +02:00
Christof Thalhofer
f524a2eb9d fix gb.test bug 2181
[GB.TEST]
* BUG: gb.test does not print a real error's text
2021-04-27 13:44:35 +02:00
gambas
5bcecf2c41 Use 'SIGUSR2' signal instead of 'SIGUSR1' to stop debugged processes, because 'SIGUSR1' makes WebKit crash.
[GB.DEBUG]
* BUG: Use 'SIGUSR2' signal instead of 'SIGUSR1' to stop debugged processes, because 'SIGUSR1' makes WebKit crash.
2021-04-27 10:39:05 +02:00
gambas
cdafe4c211 Use 'String[].Remove()' instead of 'String[].Extract()' which was not needed.
[GB.TEST]
* OPT: Use 'String[].Remove()' instead of 'String[].Extract()' which was not needed.
2021-04-13 00:35:31 +02:00
Christof Thalhofer
6872813adc gb.test Prints line numbers for clickable links
[GB.TEST]
*NEW: Prints line numbers in TAP output so that the IDE can create clickable links to the code.
2021-04-12 22:50:36 +02:00
gambas
77654d842f Add GB.DateFromString() API.
[INTERPRETER]
* NEW: Add GB.DateFromString() API.
2021-04-10 23:05:09 +02:00
gambas
171b46c2f3 Tells the database driver if the connection has already been closed when releasing a query result.
[INTERPRETER]
* NEW: Add an API to know if a native error has already been raised.

[GB.DB]
* NEW: The Result.Release() driver API now tells if the connection has been closed.
* NEW: Raise an error when retrieving the primary key fails, if the driver has not already raised it.
2021-04-10 16:15:34 +02:00
gambas
256942831f Fix corner-cases for forward-only Result objects.
[GB.DB]
* BUG: Don't call the collation driver routine if the 'no_collation' flag is set by the database driver.
* BUG: Do not try to seek anywhere in the Result object if the 'no_seek' flag is set, even if the row count is positive.
* BUG: Result.Delete() never removes a row from the result set if its row count is negative (i.e. if it is forward-only).
2021-04-10 03:41:31 +02:00
gambas
5fea1897fb Url$() does not encode spaces with the '+' character anymore, as this is deprecated, and works only inside query part of the URL.
[INTERPRETER]
* BUG: Url$() does not encode spaces with the '+' character anymore, as this is deprecated, and works only inside query part of the URL.
2021-04-09 03:41:02 +02:00
gambas
f6fab7df97 Update authors.
[GB.COMPRESS]
* NEW: Update authors.
2021-04-05 15:03:38 +02:00
gambas
1beaf47ca7 Merge branch 'master' of gitlab.com:gambas/gambas 2021-04-03 13:15:10 +02:00
gambas
03913217d1 Make a project icon.
[GB.JIT]
* NEW: Make a project icon.
2021-04-03 12:46:45 +02:00