]>
git.ipfire.org Git - thirdparty/vala.git/log
Rico Tzschichholz [Tue, 16 Jun 2020 12:55:04 +0000 (14:55 +0200)]
parser: Avoid mitigation for missing token if it follows DOT or DOUBLE_COLON
Rolling back to a DOT/DOUBLE_COLON token will retrigger the attempt to parse
an incomplete member access.
Regression of
4368a4fa667148378dcdbd251a4ae4e00c9a8e5a
Fixes https://gitlab.gnome.org/GNOME/vala/issues/987
Rico Tzschichholz [Wed, 17 Jun 2020 17:26:55 +0000 (19:26 +0200)]
codegen: Cast initializer-list to struct for non-constant/non-array assignments
Avoid invalid c-code and use the correct syntax for compound literals.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1013
Rico Tzschichholz [Wed, 17 Jun 2020 15:03:47 +0000 (17:03 +0200)]
gtk4: Prefix value names of PaintableFlags with "STATIC_"
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1011
Rico Tzschichholz [Wed, 17 Jun 2020 14:58:56 +0000 (16:58 +0200)]
girparser: Actually respect given cprefix metadata for enumerations
Rico Tzschichholz [Thu, 16 Apr 2020 10:37:26 +0000 (12:37 +0200)]
vala: Use available CodeContext instance for VersionAttribute.check()
Rico Tzschichholz [Tue, 16 Jun 2020 10:39:55 +0000 (12:39 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Tue, 16 Jun 2020 10:38:49 +0000 (12:38 +0200)]
gtk4: Update to 3.98.5+
2cc39fe2
Rico Tzschichholz [Tue, 16 Jun 2020 10:23:46 +0000 (12:23 +0200)]
gstreamer: Update from 1.17.0+ git master
Rico Tzschichholz [Tue, 16 Jun 2020 10:21:59 +0000 (12:21 +0200)]
pango: Update from 1.45.2
Rico Tzschichholz [Mon, 15 Jun 2020 18:18:11 +0000 (20:18 +0200)]
vala: Use correct value-type for ArrayCreationExpression used as argument
Copy fixed_length and inline_allocated attributes from formal-target-type.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1009
Rico Tzschichholz [Sun, 14 Jun 2020 07:53:21 +0000 (09:53 +0200)]
libvaladoc: Remove unused Api.Class.get_finalize_function_name() API
Rico Tzschichholz [Sun, 14 Jun 2020 06:59:51 +0000 (08:59 +0200)]
Consistently use get_ccode_lower_case_prefix() for function names
Create the expected name for "constructor" and "finalize" functions
which are non-public API.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1008
Rico Tzschichholz [Thu, 11 Jun 2020 09:59:46 +0000 (11:59 +0200)]
vala: Reduce calls of CodeContext.get()
Rico Tzschichholz [Thu, 11 Jun 2020 11:29:52 +0000 (13:29 +0200)]
tests: Build typelib if g-ir-compiler is available
Corentin Noël [Fri, 27 Mar 2020 12:32:58 +0000 (13:32 +0100)]
libvaladoc/girimporter: Skip "function-macro" elements
This is the same patch as in commit
f51d9dfdaf97ab5b8377d7e5bb78cfc9b232dc86
Rico Tzschichholz [Wed, 10 Jun 2020 12:01:05 +0000 (14:01 +0200)]
girwriter: Append symbol-attributes to callback field rather than its type
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1006
Rico Tzschichholz [Wed, 10 Jun 2020 07:45:45 +0000 (09:45 +0200)]
gtk4: Update to 3.98.5+
d2235b71
Rico Tzschichholz [Tue, 9 Jun 2020 14:22:17 +0000 (16:22 +0200)]
codegen: Add implicit parameter and instance checks in async method
This is already done for every non-async method and can be disabled by
passing --disable-assert.
See https://gitlab.gnome.org/GNOME/vala/issues/1005
Rico Tzschichholz [Tue, 9 Jun 2020 11:56:25 +0000 (13:56 +0200)]
gstreamer-audio-1.0: Adjustments for Gst.Audio.Sink class extension
Rico Tzschichholz [Mon, 8 Jun 2020 18:37:43 +0000 (20:37 +0200)]
pango: Update from 1.45.1
Rico Tzschichholz [Sun, 7 Jun 2020 13:29:37 +0000 (15:29 +0200)]
gstreamer: Update from 1.17.0+ git master
Rico Tzschichholz [Sun, 7 Jun 2020 13:29:07 +0000 (15:29 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Sun, 7 Jun 2020 11:35:45 +0000 (13:35 +0200)]
glib-2.0,gobject-2.0: Add new symbols from 2.66
Rico Tzschichholz [Sat, 6 Jun 2020 07:53:19 +0000 (09:53 +0200)]
vala: Correctly handle qualified struct type reference in initializer list
Construct member-access including namespace of inferred struct type.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1004
Rico Tzschichholz [Fri, 5 Jun 2020 07:07:54 +0000 (09:07 +0200)]
vala: Fix typo in comments
Rico Tzschichholz [Thu, 4 Jun 2020 06:10:21 +0000 (08:10 +0200)]
codegen: Don't call get_ccode_finish_instance() with non-async methods
and restrict evaluation of CCode.finish_* attributes to async methods only
Nick Schrader [Fri, 27 Mar 2020 16:12:09 +0000 (13:12 -0300)]
Add support for "with" statement
Creates data type scoped blocks which allow implicit member access to
the given expression or declaration statement.
with (expr) {
...;
}
Within the with-block the expression's members can be directly accessed
without the member access operator.
Members may hide local, class and instance varibales with the same name.
Instance variables are still accessible through this.
A local variable can be directly declared in the with statement header.
Hidden local and class variables are currently not directly accessible
(using this for class members generates the expected warning).
Fixes https://gitlab.gnome.org/GNOME/vala/issues/327
Rico Tzschichholz [Wed, 22 Apr 2020 20:33:53 +0000 (22:33 +0200)]
vala: Add InvalidExpression as replacement for erroneous nodes instead
This type is meant to be used where a successful parsing or transforming
cannot be achieved and the usage of "null" is not possible.
Rico Tzschichholz [Tue, 26 May 2020 08:03:16 +0000 (10:03 +0200)]
vala: Improve source documentation
Rico Tzschichholz [Sun, 24 May 2020 17:25:41 +0000 (19:25 +0200)]
codegen: Improve array-dup-wrapper for empty arrays
Guard against negative lengths and consistently return NULL if allocated
size would be 0.
See https://gitlab.gnome.org/GNOME/vala/issues/999
Rico Tzschichholz [Wed, 27 May 2020 07:22:32 +0000 (09:22 +0200)]
Revert "codegen: Dup arrays only if length > 0, this consistently returns NULL (POSIX)"
This reverts commit
18847c9221362081c9a9d37e2922f3e3ea648088 .
Fixes https://gitlab.gnome.org/GNOME/vala/issues/999
wb9688 [Tue, 26 May 2020 09:57:03 +0000 (11:57 +0200)]
parser: Map empty start/end index to 0/length for slice expressions
This allows a syntax like a[:], a[2:] or a[:3] for arrays and strings.
Co-authored-by: Simon Werbeck <simon.werbeck@gmail.com>
Fixes https://gitlab.gnome.org/GNOME/vala/issues/238
Rico Tzschichholz [Sun, 24 May 2020 17:25:41 +0000 (19:25 +0200)]
tests: Extend "s[p]lice" tests to increase coverage
Rico Tzschichholz [Sun, 24 May 2020 17:25:41 +0000 (19:25 +0200)]
codegen: Dup arrays only if length > 0, this consistently returns NULL (POSIX)
Rico Tzschichholz [Sun, 24 May 2020 12:15:38 +0000 (14:15 +0200)]
Revert "glib-2.0: Map given end == 0 for string.slice/splice() to string.length"
This reverts commit
f844ad1c02fb5b17e923a7ba4e69cf2a7df96a14 .
wb9688 [Thu, 21 May 2020 08:52:01 +0000 (10:52 +0200)]
glib-2.0: Map given end == 0 for string.slice/splice() to string.length
Fixes https://gitlab.gnome.org/GNOME/vala/issues/179
Rico Tzschichholz [Fri, 22 May 2020 16:31:46 +0000 (18:31 +0200)]
gtk+-3.0: Deprecated abstract methods are not required to be implemented
Rico Tzschichholz [Tue, 19 May 2020 13:34:56 +0000 (15:34 +0200)]
Sync NEWS from 0.48
Rico Tzschichholz [Tue, 19 May 2020 13:20:07 +0000 (15:20 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Tue, 19 May 2020 10:56:53 +0000 (12:56 +0200)]
gstreamer: Update from 1.17.0+ git master
Rico Tzschichholz [Tue, 19 May 2020 10:56:26 +0000 (12:56 +0200)]
webkit2gtk-4.0: Update to 2.29.1
Rico Tzschichholz [Mon, 18 May 2020 10:37:57 +0000 (12:37 +0200)]
gtk4: Update to 3.98.3+
028942c8
Rico Tzschichholz [Mon, 18 May 2020 10:30:07 +0000 (12:30 +0200)]
girparser: Add support for boolean "new" argument for methods
Rico Tzschichholz [Mon, 18 May 2020 10:26:14 +0000 (12:26 +0200)]
vala: Explicit "new" method may be incompatible with a posssible base method
Rico Tzschichholz [Mon, 18 May 2020 07:31:41 +0000 (09:31 +0200)]
codegen: Use loop index instead of get_ccode_pos() for ellipsis parameter
Otherwise this will cause an index clash resulting in loosing the first
variable list parameter.
Regression of
b1cb7036bee1f21e98e93ac34b31a95eeed32815
Fixes https://gitlab.gnome.org/GNOME/vala/issues/995
Rico Tzschichholz [Sun, 10 May 2020 14:40:56 +0000 (16:40 +0200)]
gtk4: Update to 3.98.3+
386b36a6
Rico Tzschichholz [Sun, 10 May 2020 10:54:15 +0000 (12:54 +0200)]
vala: Transform cast from integer-type to boxed-type
Don't generate faulty c-code with results in segmentation faults.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/992
Rico Tzschichholz [Sat, 9 May 2020 11:35:07 +0000 (13:35 +0200)]
vala: Transform cast from floating-type to boxed-type
Don't generate invalid c-code leading to "cannot convert to a pointer type"
Fixes https://gitlab.gnome.org/GNOME/vala/issues/991
Rico Tzschichholz [Sun, 10 May 2020 06:46:33 +0000 (08:46 +0200)]
codegen: Correctly handle cast-expression of real struct to nullable struct
Don't generate invalid c-code leading to "cannot convert to a pointer type"
Fix https://gitlab.gnome.org/GNOME/vala/issues/991
Rico Tzschichholz [Sat, 9 May 2020 06:17:47 +0000 (08:17 +0200)]
vala: Set value_type of undefined member-access to avoid further criticals
Rico Tzschichholz [Thu, 7 May 2020 18:58:36 +0000 (20:58 +0200)]
Use "str_equal" as equal_func for ArrayList<string> instances
Rico Tzschichholz [Thu, 7 May 2020 18:58:36 +0000 (20:58 +0200)]
parser: Use [Flags] for ModifierFlags
Rico Tzschichholz [Thu, 7 May 2020 18:58:36 +0000 (20:58 +0200)]
vala: Use stable hash for methods in HashMap of implicit_implementations
Fixes https://gitlab.gnome.org/GNOME/vala/issues/990
Rico Tzschichholz [Thu, 7 May 2020 08:44:54 +0000 (10:44 +0200)]
valadoc: Add implicit "Posix" using-directive for POSIX profile
Rico Tzschichholz [Thu, 7 May 2020 08:44:54 +0000 (10:44 +0200)]
valadoc: Keep using add_package() for default packages and handle POSIX
Caused empty documentations for glib-2.0 and gobject-2.0 after
bd73f1ba11c387c919ad06d44badfd7065d1e35f
Fixes https://gitlab.gnome.org/GNOME/vala/issues/989
Rico Tzschichholz [Tue, 5 May 2020 10:28:32 +0000 (12:28 +0200)]
vala: params-array parameter is not allowed in abstract/virtual method
Fixes https://gitlab.gnome.org/GNOME/vala/issues/985
Rico Tzschichholz [Tue, 5 May 2020 07:32:48 +0000 (09:32 +0200)]
vala: SemanticAnalyzer.get_instance_base_type() is not allowed to return null
This is private internal API.
Rico Tzschichholz [Tue, 5 May 2020 07:19:28 +0000 (09:19 +0200)]
vala: Allow node_reference being null in SemanticAnalyzer.get_instance_base_type()
This allows a wider usage of DataType.get_actual_type() without an actual
reference to the AST.
This is private internal API.
Rico Tzschichholz [Sat, 2 May 2020 07:56:25 +0000 (09:56 +0200)]
gtk4: Update to 3.98.3+
429e0bfa
Rico Tzschichholz [Mon, 27 Apr 2020 12:43:59 +0000 (14:43 +0200)]
gitignore: Update and add some IDE files
Rico Tzschichholz [Fri, 29 Mar 2019 13:27:14 +0000 (14:27 +0100)]
vala: Check coverage of switch on enum-type and issue warnings if needed
See https://gitlab.gnome.org/GNOME/vala/issues/777
Rico Tzschichholz [Thu, 23 Apr 2020 07:03:03 +0000 (09:03 +0200)]
Sync NEWS from 0.48
Rico Tzschichholz [Thu, 23 Apr 2020 05:40:41 +0000 (07:40 +0200)]
tests: Extend "fastvapi" test to increase coverage
Rico Tzschichholz [Thu, 23 Apr 2020 05:44:21 +0000 (07:44 +0200)]
Revert "vala: Set default_construction_method in semantic-analyzer check if required"
This reverts commit
d176f179581fac880f5598bb53b3475392af2c4b .
Fixes https://gitlab.gnome.org/GNOME/vala/issues/982
Rico Tzschichholz [Tue, 21 Apr 2020 13:15:01 +0000 (15:15 +0200)]
Sync NEWS from 0.48
Rico Tzschichholz [Tue, 21 Apr 2020 12:27:13 +0000 (14:27 +0200)]
tests: Fix make dist
Rico Tzschichholz [Tue, 21 Apr 2020 11:37:11 +0000 (13:37 +0200)]
gtk4: Update to 3.98.3
Rico Tzschichholz [Mon, 20 Apr 2020 14:26:49 +0000 (16:26 +0200)]
gtk4: Update to 3.98.2+
2869f80b
Rico Tzschichholz [Sun, 19 Apr 2020 16:20:41 +0000 (18:20 +0200)]
gio-2.0: Add "async_result_pos" attributes to *.call_with_unix_fd_list()
Fixes https://gitlab.gnome.org/GNOME/vala/issues/340
Rico Tzschichholz [Sun, 19 Apr 2020 16:20:41 +0000 (18:20 +0200)]
girparser: Improve detection of AsyncReadyCallback/AsyncResult parameters
Rico Tzschichholz [Sun, 19 Apr 2020 16:20:41 +0000 (18:20 +0200)]
girparser: Drop special handling of GLib.Data, GLib.PtrArray and GLib.String
Rico Tzschichholz [Sun, 19 Apr 2020 16:20:41 +0000 (18:20 +0200)]
girparser: Move special handling for certain parameters to process_callable()
- Detect delegate throwing error when GLib.Error out-parameter exists
- Mark method as async based on finding an AsyncReadyCallback parameter
- Apply null-literal default-value for trailing GLib.Cancellable? parameters
Rico Tzschichholz [Sun, 19 Apr 2020 16:20:41 +0000 (18:20 +0200)]
codegen: Fix default of CCode.pos for parameters in async methods
Rico Tzschichholz [Sat, 18 Apr 2020 11:10:34 +0000 (13:10 +0200)]
gtk4: Update to 3.98.2+
6a4f7889
Rico Tzschichholz [Sat, 18 Apr 2020 11:10:34 +0000 (13:10 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Sat, 18 Apr 2020 11:10:34 +0000 (13:10 +0200)]
glib-2.0: Add Unicode 13.0 symbols
Princeton Ferro [Fri, 17 Apr 2020 06:45:12 +0000 (02:45 -0400)]
vala: Ensure non-empty argument list for "disconnect" before accessing it
Avoids an internal assertion on accessing an empty collection.
Rico Tzschichholz [Thu, 16 Apr 2020 14:38:55 +0000 (16:38 +0200)]
tests: Actually make the "version check" tests work
Rico Tzschichholz [Thu, 16 Apr 2020 12:36:10 +0000 (14:36 +0200)]
tests: Add "version check" tests to increase coverage
Use several symbols from glib-2.0 >= 2.50 and refer to custom pkg-config
file defining 2.48.0 as version.
Rico Tzschichholz [Thu, 16 Apr 2020 10:37:26 +0000 (12:37 +0200)]
vala: Quote symbol on report by version attribute check
Rico Tzschichholz [Thu, 16 Apr 2020 10:37:26 +0000 (12:37 +0200)]
vala: Perform version check for types of non-external variable declarations
Rico Tzschichholz [Thu, 16 Apr 2020 10:37:26 +0000 (12:37 +0200)]
vala: Don't perform version check on internal lambda method
Rico Tzschichholz [Thu, 16 Apr 2020 08:00:21 +0000 (10:00 +0200)]
glib-2.0: Guard Pid.to_string() with GLIB_2_50 to deal with G_PID_FORMAT
Otherwise building with glib-2.0 < 2.50 breaks due availability check of
GLib.Pid.FORMAT.
Rico Tzschichholz [Thu, 16 Apr 2020 08:00:21 +0000 (10:00 +0200)]
vala: Fix cleaning of output in CodeContext.pkg_config_modversion()
Rico Tzschichholz [Thu, 16 Apr 2020 08:00:21 +0000 (10:00 +0200)]
Revert "vala: Drop mitigation in CodeContext.pkg_config_modversion() when it failed"
This reverts commit
09e565a511f43e48737b0bfb881ccfb32cf0ab82 .
Rico Tzschichholz [Wed, 15 Apr 2020 19:17:33 +0000 (21:17 +0200)]
vala: Check assigned handler of dynamic signal before proceeding further
This fixes criticals if an errornous expression was given.
Rico Tzschichholz [Wed, 15 Apr 2020 14:24:10 +0000 (16:24 +0200)]
codegen: Check vfunc of abstract/virtual properties for NULL before using it
Fixes https://gitlab.gnome.org/GNOME/vala/issues/153
Rico Tzschichholz [Wed, 15 Apr 2020 14:24:10 +0000 (16:24 +0200)]
codegen: Check vfunc of abstract/virtual methods for NULL before using it
Fixes https://gitlab.gnome.org/GNOME/vala/issues/153
Rico Tzschichholz [Wed, 15 Apr 2020 12:06:57 +0000 (14:06 +0200)]
codegen: Fix base-access to non-abstract/non-virtual properties
Don't unconditionally try to access vfuncs and actually emit assignments.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/204
Rico Tzschichholz [Mon, 13 Apr 2020 13:29:56 +0000 (15:29 +0200)]
testrunner: Add -Werror=array-bounds
Rico Tzschichholz [Mon, 13 Apr 2020 13:29:56 +0000 (15:29 +0200)]
codegen: Use specified indices to access multidimensional array constants
This fixes compile issues together with -Waggressive-loop-optimizations
and warnings with -Warray-bounds.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/905
Rico Tzschichholz [Sun, 12 Apr 2020 09:02:29 +0000 (11:02 +0200)]
codegen: Correctly handle signals returning real non-nullable struct
Fixes https://gitlab.gnome.org/GNOME/vala/issues/466
Rico Tzschichholz [Sun, 12 Apr 2020 09:02:29 +0000 (11:02 +0200)]
codegen: Use get_value_*_function() in GSignalModule.generate_marshaller()
This makes sure to pick up the intended function like the generated ones
for fundamental classes.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/468
Andrea Del Signore [Fri, 3 Apr 2020 17:10:40 +0000 (19:10 +0200)]
codegen: Fix binary 'in' operator on array with boxed value-typed needle
See https://gitlab.gnome.org/GNOME/vala/issues/951
Princeton Ferro [Thu, 9 Apr 2020 19:15:45 +0000 (21:15 +0200)]
parser: Handle incomplete expression statements
Incomplete expression statements are parsed as expression statements
now, rather than local variable declarations. This primarily affects
incomplete member access expressions at the end of blocks.
Rico Tzschichholz [Wed, 10 Apr 2019 07:23:54 +0000 (09:23 +0200)]
vala: Add SourceLocation.to_string()
Rico Tzschichholz [Tue, 19 Mar 2019 14:58:25 +0000 (15:58 +0100)]
vala: Add SourceReference.contains()
Rico Tzschichholz [Sat, 11 Apr 2020 11:39:01 +0000 (13:39 +0200)]
gstreamer-1.0: Don't skip GST_*_FORMAT strings
Partially reverts
10b87427a263886b0e36d5f4a297d6e079b74b6e
Fixes https://gitlab.gnome.org/GNOME/vala/issues/970
Princeton Ferro [Sat, 11 Apr 2020 07:32:54 +0000 (03:32 -0400)]
vala: Don't use possibly uninitialized backing field of package_name
Don't check _package_name directly, which may be null at the time
installed_version is accessed. This fixes a bug where Vala wouldn't
generate errors when using symbols that are unavailable for a package
version.
Introduced by
7f0e90a5c34f437b7ab8f9197a9d42fc835b1a60
Fixes https://gitlab.gnome.org/GNOME/vala/issues/971
Rico Tzschichholz [Sat, 11 Apr 2020 08:55:52 +0000 (10:55 +0200)]
vala: Drop mitigation in CodeContext.pkg_config_modversion() when it failed
See https://gitlab.gnome.org/GNOME/vala/issues/971