2020-03-26  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.40.20

2020-03-24  Rico Tzschichholz  <ricotz@ubuntu.com>

	manual: Update from wiki.gnome.org

	vala: Inline-allocated array can't be instantiated with creation expression
	This generalizes 0554ed7ad9cefe0f56e53dc00be88488dfa788bf

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/926

	glib-2.0: Add binding for g_win32_ftruncate()

	gio-2.0: Add binding for g_io_error_from_win32_error()

2020-03-24  ZUHONG TAO  <taozuhong@gmail.com>

	glib-2.0: Add missing IOChannel's win32 API

2020-03-24  Rico Tzschichholz  <ricotz@ubuntu.com>

	parser: Improve error message for invalid ArrayCreationExpression
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/939

	tests: Add "property array length" test to increase coverage

	codegen: Use memset to initialize inline-allocated array with non-constant size
	In addition to a0bb129e5a2e8580eb272d9a68ba054e7b170dba

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/910

	vala: Inherit lambda parameter attributes from delegate
	... by setting base_parameter accordingly

	vala: Improve copy of required attributes from delegate to lamdba method

	vala: Accept enum-values as length for inline allocated arrays
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/935

	valadoc: Create and register current Vala.CodeContext properly

	vala: Use error() instead of Report.error() inside of CodeContext.get()
	This is a bad thing while Report.error() actually uses CodeContext.get()

	Regression of e436f2833dc332e3fd728fe6f6b2cd7f224dcf33

	codegen: Reset outdated array _size_ variable after use as ref parameter
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/929

	vapigen: Define "GOBJECT" corresponding to set profile of CodeContext
	This is required to evaluate pre-processor directives correctly in
	sourced bindings.

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/933

2020-03-24  ZUHONG TAO  <taozuhong@gmail.com>

	glib-2.0: Add binding for g_poll()
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/924

2020-03-24  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Extend "GLib.Value (un-)boxing" test to increase coverage

	glib-2.0: Add missing "type_id" or "has_type_id" attributes to structs
	See https://gitlab.gnome.org/GNOME/vala/issues/921

	vala: Fix search for Parameter.base_parameter

	glib-2.0: Memory profiling ("g_mem_*") is deprecated since 2.46

	tests: Extend "GenericAccessors" test to increase coverage

	codegen: Add destroy of parameter in vfunc of delegate property setter
	The vfunc of an owned setter requires a destroy parameter. Support for
	this was introduced with 1e90d53dba0eff6ec2babd8292676099308dd4f6

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/919

2020-03-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	manual: Update from wiki.gnome.org

2020-03-05  Princeton Ferro  <princetonferro@gmail.com>

	vala: Prevent possible stack-overflow in Class.is_subtype_of()

	girparser: Delay adding of "GLib.Object" prerequisite to interfaces

2020-03-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	girparser: Decrease return_array_length_idx for transformed function

	vala: Report an internal error for unavailable context and bail
	If calling CodeContext.get/pop() with an empty stack present then there is
	no way to recover so bail.

2020-03-05  Princeton Ferro  <princetonferro@gmail.com>

	vala: Fix circular reference in EnumValueType

	vala: Fix circular reference in Property

	Add missing CodeContext.pop() calls
	Release previously pushed CodeContext instances from static list.

2020-03-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Add local-variables to current scope regardless its error state
	This avoids subsequent errors which are not useful to report when the user
	actually defined it.

	vala: Return early for invalid initializer of local variable declarations

	vala: Skip UsingDirective if error is set

2020-03-05  Princeton Ferro  <princetonferro@gmail.com>

	vala: Handle unavailable type-symbol in Constant.check_const_type()
	This caused criticals like:

	  vala_typesymbol_is_subtype_of: assertion 'self != NULL' failed

2020-03-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Don't analyze error-type of errornous catch-clauses

	vala: Properly set CodeNode.error when reporting an error (2)

	vala: Don't check for unhandled error if error is set on body
	This is how Method and CreationMethod behave already.

	tests: Add "throw unknown error" test to increase coverage

	vala: Rely on more implementations of Block in SwitchSection
	It was possible that statements in switch-sections were not processed
	by the semantic-analyzer. Therefore they were not checked for errors
	and marked as such.

	vala: Rework ReturnStatement.check to handle "current_return_type == null"
	Thanks to Daniel Espinosa Ortiz.

	tests: Add invalid "return" tests to increase coverage

	vapi: Add some fundamental deps files
	When using --nostdpkg those are important to have.

	See https://gitlab.gnome.org/GNOME/vala/issues/911

	vala: Prevent possible stack-overflow in Class.is_compact/is_immutable
	Guard recursive call on base_class in is_compact and is_immutable by
	checking for cyclic class declaration.

2020-03-05  Princeton Ferro  <princetonferro@gmail.com>

	vala: Method representing a LambdaExpression might be null on an error
	This caused criticals like:

	  vala_method_get_closure: assertion 'self != NULL' failed

2020-03-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Never add "null" in ForeachStatement.get_defined_variables()
	See https://gitlab.gnome.org/GNOME/vala/issues/911

	vala: Don't process arguments of MethodCall if error is set
	This caused criticals like:

	  vala_method_get_closure: assertion 'self != NULL' failed

	vala: Set error and return early on invalid index in ElementAccess
	This caused criticals like:

	  vala_code_node_check: assertion 'self != NULL' failed

	vala: Don't process initializer of parameter if error is set
	This caused criticals like:

	  vala_data_type_compatible: assertion 'self != NULL' failed
	  vala_code_node_to_string: assertion 'self != NULL' failed

	tests: Add "GObject and GType class lifetime" tests to increase coverage

	testrunner: Pass G_DEBUG=fatal-warnings to invalid test

	vala: Handle PointerType and VoidType in Constant.check_const_type()
	This caused criticals like:

	  vala_typesymbol_is_subtype_of: assertion 'self != NULL' failed

	codegen: Don't initialize stack-allocated array with local-constant length
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/910

	manual: Update from wiki.gnome.org

	girparser: Report a warning for conflicting class and instance methods

	vala: Properly set CodeNode.error when reporting an error