| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Relatively common in practice are:
* output with transfer full, which is already covered by
`regress_test_array_struct_out`,
* input with transfer none, covered by a new
`regress_test_array_struct_in_none`
Other variants are quite esoteric, but it still might be useful to
include them so that bindings can verify that they are handled
gracefully, e.g., by reporting an error instead of crashing.
Issue #90
|
|
|
|
|
|
|
|
|
|
|
| |
This is necessary to parse types like `unsigned char` or `long double`,
and is already done when parsing `declarations_specifiers`. Examples
that are fixed by this change include:
* `GLib.TestLogMsg.nums` previously parsed as `long` but should be `long
double`.
* `GMime.Encoding.uubuf` previously parsed as `unsigned` but should be
`unsigned char`.
|
| |
|
|
|
|
|
|
|
|
| |
This adds a property to RegressTestInterface which can be overridden, and
makes RegressTestSubObj implement it and override the property. This is
in order to catch the regressions in GJS around property access.
See gjs#193.
|
|
|
|
|
|
|
| |
GTK contains a few write-only properties, so it makes sense to have one
in the regress test suite.
See gjs!246
|
|
|
|
|
| |
It was added as part of !25 but without any implementation.
This made instantiating TestObject fail which we do in the pygobject test suite.
|
|
|
|
| |
These tests only get run with autotools atm
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Macro constants may now refer to constants defined in source files.
Test case provided by Philip Chimento.
Fixes issues #173 and #75.
|
|
|
|
|
|
|
|
| |
When replacing type with one from user annotation we already preserve
ctype, do the same for complete_ctype to preserve const / volatile
qualifiers if any.
Fixes issue #190.
|
|
|
|
|
|
|
|
|
|
| |
This is something that libraries are not supposed to do, but some do
anyway (Soup and Clutter are two examples) and language bindings should
handle it somehow or other. In GJS we want to make sure that the way it's
handled doesn't change inadvertently, because buggy library code should
not break existing user code.
https://bugzilla.gnome.org/show_bug.cgi?id=785091
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"(in) (transfer none)".
The "(in)" alias was (unintenionally?) introduced in
https://git.gnome.org/browse/gobject-introspection/commit/?id=699ad0fec427c79bec1
which added an alias for return annotations. This change makes sure that this continues
to work.
Functions which ref_sink in params are currently marked as transfer-none since in the
case of non-floating objects (which all bindings use) no ownership gets transfered.
But in case of floating objects, which is the common case when using the C API directly,
the ownership _is_ transfered. Using transfer-floating should make this clearer
while giving the same result for bindings.
Functions where this could be used: gst_bin_add, gtk_container_add, gst_element_add_pad
See https://bugzilla.gnome.org/show_bug.cgi?id=657202 and https://bugzilla.gnome.org/show_bug.cgi?id=702960
https://bugzilla.gnome.org/show_bug.cgi?id=742618
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=775679
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=760056
|
|
|
|
|
|
|
| |
C11 which added support for anonymous unions (already supported)
also adds support for anonymous structs.
https://bugzilla.gnome.org/show_bug.cgi?id=766011
|
|
|
|
|
|
|
|
| |
This is a regression test for marshalling callback arguments from signals
with an array parameter and separate length parameter into closures in
the introspected language.
https://bugzilla.gnome.org/show_bug.cgi?id=761659
|
|
|
|
|
|
|
| |
This is a regression test for returning out arrays of structs, like
gdk_keymap_get_entries_for_keyval() for example.
https://bugzilla.gnome.org/show_bug.cgi?id=761658
|
|
|
|
|
|
|
|
|
|
|
|
| |
On bug #719966, the question arose of whether parameters annotated with
(element-type) but not (not nullable) are regarded as nullable or
non-nullable.
Add some new unit tests to Regress-1.0.gir to check the behaviour is as
expected: annotating a parameter with (element-type) implicitly makes it
non-nullable (unless also annotated with (nullable)).
https://bugzilla.gnome.org/show_bug.cgi?id=757678
|
|
|
|
|
|
|
|
|
|
| |
g-ir-scanner now supports something like this:
typedef void my_callback(int);
Notice how my_callback is not a pointer.
https://bugzilla.gnome.org/show_bug.cgi?id=755645
|
|
|
|
|
|
|
|
| |
The optional annotation was being applied which
is invalid for return values.
https://bugzilla.gnome.org/show_bug.cgi?id=752029
Signed-off-by: Garrett Regier <garrett.regier@riftio.com>
|
| |
|
|
|
|
| |
Related to: https://bugzilla.gnome.org/719966
|
|
|
|
|
|
| |
See https://bugzilla.gnome.org/show_bug.cgi?id=749696
https://bugzilla.gnome.org/show_bug.cgi?id=751978
|
|
|
|
|
| |
Add missing doc-tool tests, fixes "make distcheck" breakage
introduced by 09daa28c5b4625b6f274b3b340bc85e33bef80b5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RegressIntSet and RegressIntset, aliases of one another, were causing
two documentation pages to be built by the documentation tests that
were named identically except for letter case.
On OSX and Windows, the most common filesystems are case-insensitive,
and those two files can't exist in the same directory on case-
insensitive filesystems. That caused the tests to fail. It also caused
problems when checking out the repository, because the expected
documentation set also contains those files.
This commit fixes the symptom (so that JHbuild will stop erroring out
on this module) but not the problem of generating a documentation set
for two identifiers which differ (perfectly legally) only by case.
https://bugzilla.gnome.org/show_bug.cgi?id=725264
|
|
|
|
|
|
|
|
|
| |
We have special code to look at (type GLib.List(utf8)), but (type
GLib.PtrArray(utf8)) didn't work.
This allows NetworkManager to annotate the ActiveConnections property.
https://bugzilla.gnome.org/show_bug.cgi?id=733879
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=702508
|
|
|
|
|
|
|
|
|
|
|
| |
Knowing the ownership transfer for instance parameters is
necessary for correct memory management of functions which
"eat" their instance argument, such as g_dbus_method_invocation_return_*.
Parse this information from the gir file and store in the
typelib, and then provide new API on GICallableInfo to
retrieve this.
https://bugzilla.gnome.org/show_bug.cgi?id=729662
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use ParseState enum instead of a boolean for the ParseContexts embedded_type
flag. This allows specific tracking of the embedded type currently being
parsed which can now either be STATE_STRUCT_FIELD or STATE_CLASS_FIELD (or
allow for future expansion). Add ParseState::STATE_NONE as the default for
this field.
Fix GObject FieldBlob validation to take into account the sizeof
CallbackBlobs (copied from the struct validator).
Add static g_object_info_get_field_offset which parallels
g_struct_info_get_field_offset which is needed since callback fields may
vary in size.
https://bugzilla.gnome.org/show_bug.cgi?id=725198
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The field of a callback need not be anonymous, it could be a
typedef, with a proper Type node.
Fixes TelepathyGlib.BaseClient having no virtual functions
(and probably others)
https://bugzilla.gnome.org/show_bug.cgi?id=723439
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=724735
|
|
|
|
|
|
|
|
| |
I'd like to be able to use this inside GTK+.
See: https://bugzilla.gnome.org/show_bug.cgi?id=711153
https://bugzilla.gnome.org/show_bug.cgi?id=711157
|
|
|
|
|
|
|
|
| |
A hidden exception was being thrown (which we now log), due to fields
being treated as function parameters. Fixed to make field array
annotations be transformed and written out to the gir correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=710561
|
| |
|
|
|
|
| |
tests/warn/unkown-parameter.h:41 still passes with this...
|
|
|
|
|
|
|
|
|
| |
GTK-Doc parameter description fields are allowed to span
multiple lines, tag description fields are allowed to span
multiple lines and paragraphs. A tool fixing/rewriting
GTK-Doc comment blocks in source files would need to have
description fields parsed and stored (almost) exactly as
they appear in the source file.
|
|
|
|
|
|
|
|
| |
It's not available on 32 bit architectures, which is
a pain for our testing because we can't easily make
Regress architecture independent.
This reverts commit ca93f8474c9f6ca184d0b5806a4e459ad3dcd132.
|
| |
|
|
|
|
|
|
|
|
| |
a09072bd1f75dfc7497ed599e03e331bff411fd4 introduced new symbols in
tests/scanner/regress.[ch] but was missing the expected generated
documentation.
https://bugzilla.gnome.org/show_bug.cgi?id=698616
|
|
|
|
|
|
| |
Changed by accident in 2df621c53cdffbc3c43c3745947ee859020c8338
https://bugzilla.gnome.org/show_bug.cgi?id=697613
|
|
|
|
| |
By-product of https://bugzilla.gnome.org/show_bug.cgi?id=662241.
|
|
|
|
|
|
| |
Rather than hand-rolling our own. This ensures we traverse all nodes.
https://bugzilla.gnome.org/show_bug.cgi?id=694593
|
|
|
|
|
|
|
| |
While this is a bit lame, we need to do something. We preserve the
warning message.
https://bugzilla.gnome.org/show_bug.cgi?id=694593
|
|
|
|
| |
I really messed this one up :(
|
|
|
|
|
|
| |
We don't do a full 100% conversion for all link tags, yet,
because I don't want to break too much here. This may come
later.
|
| |
|
|
|
|
|
|
| |
Clutter has thousands of keysym constants, and until we get them
all on one page, this is just tons of tiny files that are just
noise.
|