2021-02-28 Rico Tzschichholz Release 0.48.14 tests: Add some "unary expressions" tests to increase coverage vala: Report error for invalid inner operand of unary expressions This fixes criticals like: vala_unary_expression_is_integer_type: assertion 'type != NULL' failed vala: Set proper source_reference for implicit "this" and "result" variables tests: Add more "unsupported creation method" tests to increase coverage vala: Include "stdlib.h" for Enum.to_string() (POSIX) Fixes https://gitlab.gnome.org/GNOME/vala/issues/1143 codegen: Include "string.h" for strcmp() (POSIX) vala: Improve context check whether property is writeable on assignments codegen: Don't wrongly emit declaration for default-handler of signals This is done in GTypeModule.generate_interface_declaration() tests: Add more "girparser" tests to increase coverage vala: Infer needle type for "in" expression on enum Fixes https://gitlab.gnome.org/GNOME/vala/issues/1138 tests/girwriter: Increase coverage girwriter: Output default handler of signals vala: Generics value holding struct pointer requires casting on access Fixes https://gitlab.gnome.org/GNOME/vala/issues/347 codegen: Report error for unsupported symbol_reference of MemberInitializer vala: Capturing va_list parameters/variables is not allowed Fixes https://gitlab.gnome.org/GNOME/vala/issues/1136 vala: Check type-arguments in base-types/prerequisites of class/interface Fixes https://gitlab.gnome.org/GNOME/vala/issues/404 codegen: Strip all nested occurances of CCodeCastExpression Triggered by 63551acaf0d83fac8b50904c2759c1098fbfaa71 See https://gitlab.gnome.org/GNOME/vala/issues/1134 libvaladoc: Add wrapper for "agedge" of graphviz codegen: Correctly retrieve symbol_reference of nested cast expressions Regression of 63551acaf0d83fac8b50904c2759c1098fbfaa71 Fixes https://gitlab.gnome.org/GNOME/vala/issues/1134 gee: Replace Memory.dup() with GLib.malloc() and Memory.copy() gstreamer-1.0: Set CCode.type_id of MiniObject to G_TYPE_BOXED Fixed https://gitlab.gnome.org/GNOME/vala/issues/1133 testrunner: Add "-Werror=return-stack-address" flag tests: Don't leak array if length is -1 Found by -fsanitize=address codegen: Chain up to base struct destroy function Found by -fsanitize=address codegen: Don't leak memory moving heap-allocated struct to stack Found by -fsanitize=address codegen: Don't leak GLib.Value when implicitly unboxing it Found by -fsanitize=address vala: Don't allow GLib.Value casting to nullable struct/simple types vala: GLib.Value unboxing returns unowned value codegen: Use g_boxed_free in free-wrapper for heap-allocated GLib.Value dup-wrapper is specifically using g_boxed_copy already codegen: Don't leak array memory after it was implicitly copied Found by -fsanitize=address codegen: Improve handling of recursive DelegateType Move dedicated test case into a separate file codegen: Make sure types of implicit delegate parameters are declared codegen: Use CCodeDeclaratorSuffix to emit array length of constants codegen: Also check array type of variable argument for ref parameters codegen: Add get_ccode_no_wrapper() and use it girparser: Set CCode.type_cname for classes if it doesn't match our default tests/girwriter: Add tests for async methods attributed with NoWrapper codegen: Don't emit invoker for async methods attributed with NoWrapper libxml-2.0: Fix a few binding errors fuse: Fix a few binding errors codegen: Always use G_TYPE_INSTANCE_GET_CLASS/INTERFACE for external symbols and get_ccode_type_get_function() for SourceFileType.SOURCE symbols. codegen: Handle NoWrapper attribute of async methods on caller side codegen: Allow CCode.type_cname for classes and use get_ccode_type_name() girparser: Apply "type_get_function" metadata for classes and inferfaces codegen: Add CCode.type_get_function and get_ccode_type_get_function() Allow to overide the macro name, and join get_ccode_class_get_function () and get_ccode_interface_get_function(). gtk+-2.0,javascriptcoregtk-4.0: Wrong usage of CCode.type_cname attribute girwriter: Don't emit invoker for methods attributed with NoWrapper codegen: Don't emit invoker for methods attributed with NoWrapper codegen: Handle NoWrapper attribute of interface methods on caller side vala: NoWrapper methods must be declared abstract or virtual gio-2.0: Pick up missing invoker for some AppInfo/File.*() methods gdk-pixbuf-2.0: Fix Pixbuf.save_to_streamv_async() gobject-2.0: Fix a few binding errors gdk-3.0,gdk-x11-3.0,gtk+-3.0,gtk4: Fix a few binding errors Add further support for params arrays in constructors In addition to 98ab3da89640b8b8a6c67044b4df1194672774bb See https://gitlab.gnome.org/GNOME/vala/issues/128 codegen: Improve support of SimpleType struct constructors Additionally stop generating broken and superfluous dup/free functions, and don't create not used GType declarations. vala: Don't allow disposable SimpleType structs gstreamer-1.0: Fix a few binding errors posix: Fix a few binding errors libgvc: Fix a few binding errors sqlite3: Fix a few binding errors bzlib: Fix a few binding errors alsa: Fix a few binding errors curses: Fix a few binding errors girparser: Apply "destroy_notify_cname" metadata for fields goocanvas-2.0: Fix some field types pango: Fix a few binding errors gobject-2.0: Fix a few binding errors gio-2.0,gtk+-3.0,gtk4: Drop explicit c-type attributes of va_list parameters gio-2.0: Fix binding of PollableOutputStream.write*_nonblocking() cairo: Fix some ctor binding errors cairo: Fix a few binding errors gtk+-3.0,gtk4: Fix some delegate return values and parameters girparser: Apply "delegate_target" metadata for methods and parameters vala: Don't prepend "unowned" in VarType and leave that to the CodeWriter codewriter: Append new-line for nested block statements vala: Apply stricter condition for lambda to delegate assignment This moves an internal codegen error to the semantic-analyzer. codegen: Clean up expression casts in CCodeAssignmentModule.visit_assignment() tests: Add more "parser" tests to increase coverage vala: Improve prototype-string of CallableType gtk4: Update to 4.0.2 libvaladoc: Correctly retrieve value for Api.Class.is_compact girwriter: Write instance-parameter elements Fixes https://gitlab.gnome.org/GNOME/vala/issues/1128 girparser: Discover our very own array length fields tests: Extend "girparser" test and use vapigen to parse generated gir vala: Let method representing property accessor inherit GIR.visible attribute vala: Set this_parameter of method representing property accessor tests: Add more invalid "GtkTemplate" tests to increase coverage 2021-02-28 Ole André Vadla Ravnås tests: Add "element access as ref argument" test to increase coverage 2021-02-28 Rico Tzschichholz libvaladoc/html: Don't sort struct fields to keep their original order This follows their special handling done in Codewriter.visit_struct(). In addition to a336d75586acb534aff55ca86425eb8f3aa45de4 2021-02-28 Reuben Thomas libvaladoc: Fix typos copyright year 2021-02-28 Rico Tzschichholz girparser: Minor improvement to field getter detection Allow DataType.compatible() to be called without initialized SemanticAnalyzer Additionally report a warning if field collides with method vala: Improve detection of duplicate package source files