[gobject-introspection/wip/docs: 7/7] tests: Use Regress GIR for doctool



commit 118c15ddb869db2a5e8c4e62dedf4099edf55895
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Sun Feb 3 06:58:53 2013 -0500

    tests: Use Regress GIR for doctool
    
    This makes us test a lot more functionality in the doc tool, and
    removes the need to have a lot of different test libraries, and
    different test infrastructure.

 .gitignore                                         |    2 +-
 common.mk                                          |    6 +
 configure.ac                                       |    1 -
 tests/Makefile.am                                  |    6 -
 .../DocExamples.Callback.page                      |   25 ---
 .../DocExamples.Enum.page                          |   25 ---
 .../DocExamples.Obj-property-example.page          |   27 ---
 .../DocExamples.Obj-signal-example.page            |   42 ----
 .../DocExamples.Obj-vfunc.page                     |   38 ----
 .../DocExamples.Obj.method.page                    |   82 --------
 .../DocExamples.Obj.new.page                       |   38 ----
 .../DocExamples.Obj.page                           |   59 ------
 .../DocExamples.Obj.static_method.page             |   45 -----
 .../DocExamples.ObjClass.page                      |   25 ---
 .../DocExamples.array_function.page                |   45 -----
 .../DocExamples.callback_function.page             |   60 ------
 .../DocExamples.Callback.page                      |   25 ---
 .../DocExamples.Enum.page                          |   31 ---
 .../DocExamples.Obj-property-example.page          |   30 ---
 .../DocExamples.Obj-signal-example.page            |   44 -----
 .../DocExamples.Obj-vfunc.page                     |   34 ----
 .../DocExamples.Obj.method.page                    |   73 -------
 .../DocExamples.Obj.new.page                       |   40 ----
 .../DocExamples.Obj.page                           |   63 ------
 .../DocExamples.Obj.static_method.page             |   47 -----
 .../DocExamples.array_function.page                |   47 -----
 .../DocExamples.callback_function.page             |   48 -----
 .../DocExamples.Callback.page                      |   25 ---
 .../DocExamples.Enum.page                          |   31 ---
 .../DocExamples.Obj-property-example.page          |   30 ---
 .../DocExamples.Obj-signal-example.page            |   44 -----
 .../DocExamples.Obj-vfunc.page                     |   37 ----
 .../DocExamples.Obj.method.page                    |   80 --------
 .../DocExamples.Obj.page                           |   63 ------
 .../DocExamples.Obj.static_method.page             |   48 -----
 .../DocExamples.array_function.page                |   48 -----
 .../DocExamples.callback_function.page             |   61 ------
 tests/doctool/Makefile.am                          |   60 ------
 tests/doctool/doc-examples-obj.c                   |  203 --------------------
 tests/doctool/doc-examples-obj.h                   |   93 ---------
 tests/scanner/Makefile.am                          |   38 ++++-
 .../Regress.ANNOTATION_CALCULATED_DEFINE.page      |   25 +++
 .../Regress.ANNOTATION_CALCULATED_LARGE.page       |   26 +++
 .../Regress.ANNOTATION_CALCULATED_LARGE_DIV.page   |   25 +++
 .../Regress-1.0-C-expected/Regress.ATestError.page |   25 +++
 .../Regress.AliasedTestBoxed.page                  |   25 +++
 .../Regress.AnnotationBitfield.page                |   25 +++
 .../Regress.AnnotationCallback.page                |   25 +++
 .../Regress.AnnotationForeachFunc.page             |   25 +++
 .../Regress.AnnotationListCallback.page            |   25 +++
 .../Regress.AnnotationNotifyFunc.page              |   26 +++
 .../Regress.AnnotationObject-attribute-signal.page |   38 ++++
 ...ess.AnnotationObject-doc-empty-arg-parsing.page |   35 ++++
 ...Regress.AnnotationObject-function-property.page |   26 +++
 .../Regress.AnnotationObject-list-signal.page      |   36 ++++
 .../Regress.AnnotationObject-string-property.page  |   27 +++
 .../Regress.AnnotationObject-string-signal.page    |   37 ++++
 .../Regress.AnnotationObject-tab-property.page     |   28 +++
 .../Regress.AnnotationObject.allow_none.page       |   51 +++++
 .../Regress.AnnotationObject.calleeowns.page       |   51 +++++
 .../Regress.AnnotationObject.calleesowns.page      |   58 ++++++
 .../Regress.AnnotationObject.compute_sum.page      |   51 +++++
 .../Regress.AnnotationObject.compute_sum_n.page    |   58 ++++++
 .../Regress.AnnotationObject.compute_sum_nz.page   |   58 ++++++
 .../Regress.AnnotationObject.create_object.page    |   44 +++++
 .../Regress.AnnotationObject.do_not_use.page       |   44 +++++
 .../Regress.AnnotationObject.extra_annos.page      |   44 +++++
 .../Regress.AnnotationObject.foreach.page          |   58 ++++++
 .../Regress.AnnotationObject.get_hash.page         |   45 +++++
 .../Regress.AnnotationObject.get_objects.page      |   46 +++++
 .../Regress.AnnotationObject.get_strings.page      |   45 +++++
 .../Regress.AnnotationObject.hidden_self.page      |   44 +++++
 .../Regress.AnnotationObject.in.page               |   51 +++++
 .../Regress.AnnotationObject.inout.page            |   51 +++++
 .../Regress.AnnotationObject.inout2.page           |   51 +++++
 .../Regress.AnnotationObject.inout3.page           |   51 +++++
 .../Regress.AnnotationObject.method.page           |   44 +++++
 .../Regress.AnnotationObject.notrans.page          |   44 +++++
 .../Regress.AnnotationObject.out.page              |   51 +++++
 .../Regress.AnnotationObject.page                  |   58 ++++++
 .../Regress.AnnotationObject.parse_args.page       |   58 ++++++
 .../Regress.AnnotationObject.set_data.page         |   58 ++++++
 .../Regress.AnnotationObject.set_data2.page        |   58 ++++++
 .../Regress.AnnotationObject.set_data3.page        |   59 ++++++
 .../Regress.AnnotationObject.string_out.page       |   51 +++++
 .../Regress.AnnotationObject.use_buffer.page       |   51 +++++
 .../Regress.AnnotationObject.watch.page            |   59 ++++++
 .../Regress.AnnotationObject.watch_full.page       |   65 +++++++
 .../Regress.AnnotationObject.with_voidp.page       |   51 +++++
 .../Regress.AnnotationObjectClass.page             |   25 +++
 .../Regress.AnnotationStruct.page                  |   25 +++
 .../Regress.DOUBLE_CONSTANT.page                   |   25 +++
 .../Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page      |   25 +++
 .../Regress.FOO_PIE_IS_TASTY.page                  |   25 +++
 .../Regress.FOO_SUCCESS_INT.page                   |   25 +++
 .../Regress-1.0-C-expected/Regress.FooASingle.page |   25 +++
 .../Regress.FooAddressType.page                    |   25 +++
 .../Regress.FooBRect.add.page                      |   51 +++++
 .../Regress.FooBRect.new.page                      |   51 +++++
 .../Regress-1.0-C-expected/Regress.FooBRect.page   |   25 +++
 .../Regress-1.0-C-expected/Regress.FooBUnion.page  |   25 +++
 .../Regress.FooBoxed.method.page                   |   44 +++++
 .../Regress.FooBoxed.new.page                      |   38 ++++
 .../Regress-1.0-C-expected/Regress.FooBoxed.page   |   25 +++
 .../Regress-1.0-C-expected/Regress.FooBuffer.page  |   61 ++++++
 .../Regress.FooBuffer.some_method.page             |   44 +++++
 .../Regress.FooCallback.page                       |   25 +++
 .../Regress.FooDBusData.method.page                |   44 +++++
 .../Regress.FooDBusData.page                       |   25 +++
 .../Regress.FooEnumFullname.page                   |   25 +++
 .../Regress.FooEnumNoType.page                     |   25 +++
 .../Regress.FooEnumType.page                       |   25 +++
 .../Regress-1.0-C-expected/Regress.FooError.page   |   25 +++
 .../Regress-1.0-C-expected/Regress.FooEvent.page   |   25 +++
 .../Regress.FooEventAny.page                       |   25 +++
 .../Regress.FooEventExpose.page                    |   25 +++
 .../Regress.FooFlagsNoType.page                    |   25 +++
 .../Regress.FooFlagsType.page                      |   25 +++
 .../Regress.FooForeignStruct.copy.page             |   44 +++++
 .../Regress.FooForeignStruct.new.page              |   38 ++++
 .../Regress.FooForeignStruct.page                  |   25 +++
 .../Regress.FooInterface-do_regress_foo.page       |   37 ++++
 .../Regress.FooInterface.do_regress_foo.page       |   51 +++++
 .../Regress.FooInterface.page                      |   55 ++++++
 .../Regress.FooInterface.static_method.page        |   44 +++++
 .../Regress.FooInterfaceIface.page                 |   25 +++
 .../Regress.FooObject-hidden.page                  |   26 +++
 .../Regress.FooObject-read_fn.page                 |   40 ++++
 .../Regress.FooObject-signal.page                  |   38 ++++
 .../Regress.FooObject-string.page                  |   26 +++
 .../Regress.FooObject-virtual_method.page          |   37 ++++
 .../Regress.FooObject.a_global_method.page         |   44 +++++
 .../Regress.FooObject.append_new_stack_layer.page  |   51 +++++
 .../Regress.FooObject.dup_name.page                |   44 +++++
 .../Regress.FooObject.external_type.page           |   44 +++++
 .../Regress.FooObject.get_default.page             |   39 ++++
 .../Regress.FooObject.get_name.page                |   44 +++++
 .../Regress.FooObject.handle_glyph.page            |   51 +++++
 .../Regress.FooObject.is_it_time_yet.page          |   51 +++++
 .../Regress.FooObject.new.page                     |   38 ++++
 .../Regress.FooObject.new_as_super.page            |   38 ++++
 .../Regress.FooObject.new_cookie.page              |   51 +++++
 .../Regress-1.0-C-expected/Regress.FooObject.page  |   58 ++++++
 .../Regress.FooObject.read.page                    |   58 ++++++
 .../Regress.FooObject.skipped_method.page          |   44 +++++
 .../Regress.FooObject.static_meth.page             |   38 ++++
 .../Regress.FooObject.take_all.page                |   55 ++++++
 .../Regress.FooObject.various.page                 |   58 ++++++
 .../Regress.FooObject.virtual_method.page          |   51 +++++
 .../Regress.FooObjectClass.page                    |   25 +++
 .../Regress.FooObjectCookie.page                   |   25 +++
 .../Regress.FooOtherObject.page                    |   58 ++++++
 .../Regress.FooRectangle.add.page                  |   51 +++++
 .../Regress.FooRectangle.new.page                  |   66 +++++++
 .../Regress.FooRectangle.page                      |   25 +++
 .../Regress.FooSkippable.page                      |   26 +++
 .../Regress.FooStackLayer.page                     |   25 +++
 .../Regress-1.0-C-expected/Regress.FooStruct.page  |   25 +++
 .../Regress.FooSubInterface-destroy-event.page     |   33 ++++
 .../Regress.FooSubInterface-destroy_event.page     |   34 ++++
 .../Regress.FooSubInterface-do_bar.page            |   34 ++++
 .../Regress.FooSubInterface-do_baz.page            |   40 ++++
 .../Regress.FooSubInterface.do_bar.page            |   44 +++++
 .../Regress.FooSubInterface.do_baz.page            |   58 ++++++
 .../Regress.FooSubInterface.page                   |   55 ++++++
 .../Regress.FooSubInterfaceIface.page              |   25 +++
 .../Regress.FooSubobject.new.page                  |   38 ++++
 .../Regress.FooSubobject.page                      |   61 ++++++
 .../Regress.FooSubobjectClass.page                 |   25 +++
 .../Regress.FooThingWithArray.page                 |   25 +++
 .../Regress-1.0-C-expected/Regress.FooUnion.page   |   25 +++
 .../Regress.FooUtilityStruct.page                  |   25 +++
 .../Regress.FooVarargsCallback.page                |   25 +++
 .../Regress-1.0-C-expected/Regress.FooXEvent.page  |   25 +++
 .../Regress.GUINT64_CONSTANT.page                  |   25 +++
 .../Regress.GUINT64_CONSTANTA.page                 |   25 +++
 .../Regress.G_GINT64_CONSTANT.page                 |   25 +++
 .../Regress.INT_CONSTANT.page                      |   25 +++
 .../Regress-1.0-C-expected/Regress.IntSet.page     |   25 +++
 .../Regress.LONG_STRING_CONSTANT.page              |   25 +++
 .../Regress.LikeGnomeKeyringPasswordSchema.page    |   25 +++
 .../Regress-1.0-C-expected/Regress.MAXUINT64.page  |   25 +++
 .../Regress-1.0-C-expected/Regress.MININT64.page   |   25 +++
 .../Regress.Mixed_Case_Constant.page               |   25 +++
 .../Regress.NEGATIVE_INT_CONSTANT.page             |   25 +++
 .../Regress.PtrArrayAlias.page                     |   25 +++
 .../Regress.STRING_CONSTANT.page                   |   25 +++
 .../Regress.SkippedStructure.page                  |   26 +++
 .../Regress.TestABCError.page                      |   25 +++
 .../Regress.TestBoxed.copy.page                    |   44 +++++
 .../Regress.TestBoxed.equals.page                  |   51 +++++
 .../Regress.TestBoxed.new.page                     |   38 ++++
 ...ess.TestBoxed.new_alternative_constructor1.page |   44 +++++
 ...ess.TestBoxed.new_alternative_constructor2.page |   51 +++++
 ...ess.TestBoxed.new_alternative_constructor3.page |   44 +++++
 .../Regress-1.0-C-expected/Regress.TestBoxed.page  |   25 +++
 .../Regress.TestBoxedB.copy.page                   |   44 +++++
 .../Regress.TestBoxedB.new.page                    |   51 +++++
 .../Regress-1.0-C-expected/Regress.TestBoxedB.page |   25 +++
 .../Regress.TestBoxedC.new.page                    |   38 ++++
 .../Regress-1.0-C-expected/Regress.TestBoxedC.page |   25 +++
 .../Regress.TestBoxedD.copy.page                   |   44 +++++
 .../Regress.TestBoxedD.free.page                   |   44 +++++
 .../Regress.TestBoxedD.get_magic.page              |   44 +++++
 .../Regress.TestBoxedD.new.page                    |   51 +++++
 .../Regress-1.0-C-expected/Regress.TestBoxedD.page |   25 +++
 .../Regress.TestCallback.page                      |   25 +++
 .../Regress.TestCallbackArray.page                 |   25 +++
 .../Regress.TestCallbackFull.page                  |   25 +++
 .../Regress.TestCallbackGError.page                |   25 +++
 .../Regress.TestCallbackHashtable.page             |   25 +++
 .../Regress.TestCallbackOwnedGError.page           |   25 +++
 .../Regress.TestCallbackUserData.page              |   25 +++
 .../Regress.TestDEFError.page                      |   25 +++
 .../Regress-1.0-C-expected/Regress.TestEnum.page   |   25 +++
 .../Regress.TestEnumNoGEnum.page                   |   25 +++
 .../Regress.TestEnumUnsigned.page                  |   25 +++
 .../Regress-1.0-C-expected/Regress.TestError.page  |   25 +++
 .../Regress-1.0-C-expected/Regress.TestFlags.page  |   25 +++
 .../Regress.TestFloating.new.page                  |   38 ++++
 .../Regress.TestFloating.page                      |   61 ++++++
 .../Regress.TestFloatingClass.page                 |   25 +++
 .../Regress.TestFundamentalObject.page             |   55 ++++++
 .../Regress.TestFundamentalObject.ref.page         |   44 +++++
 .../Regress.TestFundamentalObject.unref.page       |   44 +++++
 .../Regress.TestFundamentalObjectClass.page        |   25 +++
 .../Regress.TestFundamentalObjectCopyFunction.page |   25 +++
 ...ress.TestFundamentalObjectFinalizeFunction.page |   25 +++
 .../Regress.TestFundamentalSubObject.new.page      |   44 +++++
 .../Regress.TestFundamentalSubObject.page          |   58 ++++++
 .../Regress.TestFundamentalSubObjectClass.page     |   25 +++
 .../Regress.TestInheritDrawable.do_foo.page        |   51 +++++
 ...ess.TestInheritDrawable.do_foo_maybe_throw.page |   51 +++++
 .../Regress.TestInheritDrawable.get_origin.page    |   58 ++++++
 .../Regress.TestInheritDrawable.get_size.page      |   58 ++++++
 .../Regress.TestInheritDrawable.page               |   58 ++++++
 .../Regress.TestInheritDrawableClass.page          |   25 +++
 .../Regress.TestInheritPixmapObjectClass.page      |   25 +++
 .../Regress.TestInterface.page                     |   55 ++++++
 .../Regress.TestInterfaceIface.page                |   25 +++
 .../Regress.TestObj-all.page                       |   33 ++++
 .../Regress.TestObj-allow_none_vfunc.page          |   37 ++++
 .../Regress.TestObj-bare.page                      |   26 +++
 .../Regress.TestObj-boxed.page                     |   26 +++
 .../Regress.TestObj-cleanup.page                   |   33 ++++
 .../Regress.TestObj-double.page                    |   26 +++
 .../Regress.TestObj-first.page                     |   33 ++++
 .../Regress.TestObj-float.page                     |   26 +++
 .../Regress.TestObj-gtype.page                     |   26 +++
 .../Regress.TestObj-hash-table-old.page            |   26 +++
 .../Regress.TestObj-hash-table.page                |   26 +++
 .../Regress.TestObj-int.page                       |   26 +++
 .../Regress.TestObj-list-old.page                  |   26 +++
 .../Regress.TestObj-list.page                      |   26 +++
 .../Regress.TestObj-matrix.page                    |   39 ++++
 .../Regress.TestObj-sig-with-array-prop.page       |   36 ++++
 .../Regress.TestObj-sig-with-foreign-struct.page   |   35 ++++
 .../Regress.TestObj-sig-with-hash-prop.page        |   36 ++++
 .../Regress.TestObj-sig-with-int64-prop.page       |   36 ++++
 .../Regress.TestObj-sig-with-intarray-ret.page     |   35 ++++
 .../Regress.TestObj-sig-with-obj.page              |   36 ++++
 .../Regress.TestObj-sig-with-strv.page             |   35 ++++
 .../Regress.TestObj-sig-with-uint64-prop.page      |   36 ++++
 .../Regress.TestObj-string.page                    |   26 +++
 ...Regress.TestObj-test-with-static-scope-arg.page |   35 ++++
 .../Regress.TestObj-test.page                      |   33 ++++
 .../Regress.TestObj.constructor.page               |   38 ++++
 .../Regress.TestObj.do_matrix.page                 |   53 +++++
 ...gress.TestObj.emit_sig_with_foreign_struct.page |   44 +++++
 .../Regress.TestObj.emit_sig_with_int64.page       |   44 +++++
 .../Regress.TestObj.emit_sig_with_obj.page         |   44 +++++
 .../Regress.TestObj.emit_sig_with_uint64.page      |   44 +++++
 .../Regress.TestObj.forced_method.page             |   44 +++++
 .../Regress.TestObj.instance_method.page           |   44 +++++
 .../Regress.TestObj.instance_method_callback.page  |   51 +++++
 .../Regress.TestObj.new.page                       |   44 +++++
 .../Regress.TestObj.new_callback.page              |   58 ++++++
 .../Regress.TestObj.new_from_file.page             |   44 +++++
 .../Regress.TestObj.null_out.page                  |   44 +++++
 .../Regress-1.0-C-expected/Regress.TestObj.page    |   58 ++++++
 .../Regress.TestObj.set_bare.page                  |   51 +++++
 .../Regress.TestObj.skip_inout_param.page          |   93 +++++++++
 .../Regress.TestObj.skip_out_param.page            |   93 +++++++++
 .../Regress.TestObj.skip_param.page                |   93 +++++++++
 .../Regress.TestObj.skip_return_val.page           |   93 +++++++++
 .../Regress.TestObj.skip_return_val_no_out.page    |   52 +++++
 .../Regress.TestObj.static_method.page             |   44 +++++
 .../Regress.TestObj.static_method_callback.page    |   44 +++++
 .../Regress.TestObj.torture_signature_0.page       |   86 ++++++++
 .../Regress.TestObj.torture_signature_1.page       |   86 ++++++++
 .../Regress.TestObjClass.page                      |   25 +++
 .../Regress.TestOtherError.page                    |   25 +++
 .../Regress.TestPrivateEnum.page                   |   25 +++
 .../Regress.TestPrivateStruct.page                 |   25 +++
 .../Regress.TestSimpleBoxedA.const_return.page     |   38 ++++
 .../Regress.TestSimpleBoxedA.copy.page             |   44 +++++
 .../Regress.TestSimpleBoxedA.equals.page           |   51 +++++
 .../Regress.TestSimpleBoxedA.page                  |   25 +++
 .../Regress.TestSimpleBoxedB.copy.page             |   44 +++++
 .../Regress.TestSimpleBoxedB.page                  |   25 +++
 .../Regress.TestSimpleCallback.page                |   25 +++
 .../Regress.TestStructA.clone.page                 |   51 +++++
 .../Regress.TestStructA.page                       |   25 +++
 .../Regress.TestStructA.parse.page                 |   51 +++++
 .../Regress.TestStructB.clone.page                 |   51 +++++
 .../Regress.TestStructB.page                       |   25 +++
 .../Regress.TestStructC.page                       |   25 +++
 .../Regress.TestStructD.page                       |   25 +++
 .../Regress.TestStructE.page                       |   25 +++
 .../Regress.TestStructE__some_union__union.page    |   25 +++
 .../Regress.TestStructF.page                       |   25 +++
 .../Regress.TestStructFixedArray.frob.page         |   44 +++++
 .../Regress.TestStructFixedArray.page              |   25 +++
 .../Regress.TestSubObj.instance_method.page        |   44 +++++
 .../Regress.TestSubObj.new.page                    |   38 ++++
 .../Regress-1.0-C-expected/Regress.TestSubObj.page |   61 ++++++
 .../Regress.TestSubObj.unset_bare.page             |   44 +++++
 .../Regress.TestSubObjClass.page                   |   25 +++
 .../Regress.TestTypeGUInt64.page                   |   25 +++
 .../Regress.TestWi8021x-testbool.page              |   26 +++
 .../Regress.TestWi8021x.get_testbool.page          |   44 +++++
 .../Regress.TestWi8021x.new.page                   |   38 ++++
 .../Regress.TestWi8021x.page                       |   58 ++++++
 .../Regress.TestWi8021x.set_testbool.page          |   51 +++++
 .../Regress.TestWi8021x.static_method.page         |   44 +++++
 .../Regress.TestWi8021xClass.page                  |   25 +++
 .../Regress.UTF8_CONSTANT.page                     |   25 +++
 .../Regress.VaListAlias.page                       |   25 +++
 .../Regress.aliased_caller_alloc.page              |   44 +++++
 .../Regress.annotation_attribute_func.page         |   51 +++++
 .../Regress.annotation_custom_destroy.page         |   59 ++++++
 .../Regress.annotation_get_source_file.page        |   38 ++++
 .../Regress.annotation_init.page                   |   51 +++++
 ...ress.annotation_invalid_regress_annotation.page |   44 +++++
 .../Regress.annotation_ptr_array.page              |   44 +++++
 .../Regress.annotation_return_array.page           |   44 +++++
 .../Regress.annotation_return_filename.page        |   38 ++++
 .../Regress.annotation_set_source_file.page        |   44 +++++
 ...s.annotation_space_after_comment_bug631690.page |   38 ++++
 .../Regress.annotation_string_array_length.page    |   51 +++++
 .../Regress.annotation_string_zero_terminated.page |   38 ++++
 ...ress.annotation_string_zero_terminated_out.page |   44 +++++
 .../Regress.annotation_test_parsing_bug630862.page |   38 ++++
 .../Regress.annotation_transfer_floating.page      |   38 ++++
 .../Regress.annotation_versioned.page              |   39 ++++
 .../Regress.atest_error_quark.page                 |   38 ++++
 .../Regress.foo_async_ready_callback.page          |   58 ++++++
 .../Regress.foo_destroy_notify_callback.page       |   58 ++++++
 .../Regress-1.0-C-expected/Regress.foo_init.page   |   38 ++++
 .../Regress.foo_method_external_references.page    |   65 +++++++
 .../Regress.foo_not_a_constructor_new.page         |   39 ++++
 .../Regress.foo_skip_me.page                       |   45 +++++
 .../Regress.foo_some_variant.page                  |   51 +++++
 .../Regress.foo_some_variant_ptr.page              |   51 +++++
 .../Regress.foo_test_array.page                    |   38 ++++
 .../Regress.foo_test_const_char_param.page         |   44 +++++
 .../Regress.foo_test_const_char_retval.page        |   38 ++++
 .../Regress.foo_test_const_struct_param.page       |   44 +++++
 .../Regress.foo_test_const_struct_retval.page      |   38 ++++
 .../Regress.foo_test_string_array.page             |   44 +++++
 .../Regress.foo_test_string_array_with_g.page      |   44 +++++
 .../Regress.foo_test_unsigned_qualifier.page       |   44 +++++
 .../Regress.foo_test_unsigned_type.page            |   44 +++++
 .../Regress.foo_test_varargs_callback.page         |   51 +++++
 .../Regress.foo_test_varargs_callback2.page        |   44 +++++
 .../Regress.foo_test_varargs_callback3.page        |   51 +++++
 .../Regress.func_obj_null_in.page                  |   44 +++++
 .../Regress.global_get_flags_out.page              |   44 +++++
 .../Regress.has_parameter_named_attrs.page         |   52 +++++
 .../Regress.introspectable_via_alias.page          |   44 +++++
 .../Regress.not_introspectable_via_alias.page      |   44 +++++
 ...ess.random_function_with_skipped_structure.page |   58 ++++++
 .../Regress.set_abort_on_error.page                |   44 +++++
 .../Regress.test_array_callback.page               |   44 +++++
 .../Regress.test_array_fixed_out_objects.page      |   44 +++++
 .../Regress.test_array_fixed_size_int_in.page      |   44 +++++
 .../Regress.test_array_fixed_size_int_out.page     |   44 +++++
 .../Regress.test_array_fixed_size_int_return.page  |   38 ++++
 .../Regress.test_array_gint16_in.page              |   51 +++++
 .../Regress.test_array_gint32_in.page              |   51 +++++
 .../Regress.test_array_gint64_in.page              |   51 +++++
 .../Regress.test_array_gint8_in.page               |   51 +++++
 .../Regress.test_array_gtype_in.page               |   51 +++++
 .../Regress.test_array_int_full_out.page           |   44 +++++
 .../Regress.test_array_int_in.page                 |   51 +++++
 .../Regress.test_array_int_inout.page              |   51 +++++
 .../Regress.test_array_int_none_out.page           |   44 +++++
 .../Regress.test_array_int_null_in.page            |   51 +++++
 .../Regress.test_array_int_null_out.page           |   51 +++++
 .../Regress.test_array_int_out.page                |   51 +++++
 .../Regress.test_async_ready_callback.page         |   44 +++++
 .../Regress.test_boolean.page                      |   44 +++++
 .../Regress.test_boolean_false.page                |   44 +++++
 .../Regress.test_boolean_true.page                 |   44 +++++
 .../Regress.test_cairo_context_full_return.page    |   38 ++++
 .../Regress.test_cairo_context_none_in.page        |   44 +++++
 .../Regress.test_cairo_surface_full_out.page       |   44 +++++
 .../Regress.test_cairo_surface_full_return.page    |   38 ++++
 .../Regress.test_cairo_surface_none_in.page        |   44 +++++
 .../Regress.test_cairo_surface_none_return.page    |   38 ++++
 .../Regress.test_callback.page                     |   44 +++++
 .../Regress.test_callback_async.page               |   51 +++++
 .../Regress.test_callback_destroy_notify.page      |   59 ++++++
 ....test_callback_destroy_notify_no_user_data.page |   52 +++++
 .../Regress.test_callback_thaw_async.page          |   38 ++++
 .../Regress.test_callback_thaw_notifications.page  |   40 ++++
 .../Regress.test_callback_user_data.page           |   52 +++++
 .../Regress.test_closure.page                      |   44 +++++
 .../Regress.test_closure_one_arg.page              |   51 +++++
 .../Regress.test_closure_variant.page              |   51 +++++
 .../Regress.test_date_in_gvalue.page               |   38 ++++
 .../Regress.test_def_error_quark.page              |   38 ++++
 .../Regress.test_double.page                       |   44 +++++
 .../Regress.test_filename_return.page              |   38 ++++
 .../Regress-1.0-C-expected/Regress.test_float.page |   44 +++++
 .../Regress.test_garray_container_return.page      |   38 ++++
 .../Regress.test_garray_full_return.page           |   38 ++++
 .../Regress.test_gerror_callback.page              |   44 +++++
 .../Regress.test_ghash_container_return.page       |   38 ++++
 .../Regress.test_ghash_everything_return.page      |   38 ++++
 .../Regress.test_ghash_gvalue_in.page              |   44 +++++
 .../Regress.test_ghash_gvalue_return.page          |   38 ++++
 ...egress.test_ghash_nested_everything_return.page |   38 ++++
 ...gress.test_ghash_nested_everything_return2.page |   39 ++++
 .../Regress.test_ghash_nothing_in.page             |   44 +++++
 .../Regress.test_ghash_nothing_in2.page            |   44 +++++
 .../Regress.test_ghash_nothing_return.page         |   38 ++++
 .../Regress.test_ghash_nothing_return2.page        |   38 ++++
 .../Regress.test_ghash_null_in.page                |   44 +++++
 .../Regress.test_ghash_null_out.page               |   44 +++++
 .../Regress.test_ghash_null_return.page            |   38 ++++
 .../Regress.test_glist_container_return.page       |   38 ++++
 .../Regress.test_glist_everything_return.page      |   38 ++++
 .../Regress.test_glist_nothing_in.page             |   44 +++++
 .../Regress.test_glist_nothing_in2.page            |   44 +++++
 .../Regress.test_glist_nothing_return.page         |   38 ++++
 .../Regress.test_glist_nothing_return2.page        |   38 ++++
 .../Regress.test_glist_null_in.page                |   44 +++++
 .../Regress.test_glist_null_out.page               |   44 +++++
 .../Regress.test_gslist_container_return.page      |   38 ++++
 .../Regress.test_gslist_everything_return.page     |   38 ++++
 .../Regress.test_gslist_nothing_in.page            |   44 +++++
 .../Regress.test_gslist_nothing_in2.page           |   44 +++++
 .../Regress.test_gslist_nothing_return.page        |   38 ++++
 .../Regress.test_gslist_nothing_return2.page       |   38 ++++
 .../Regress.test_gslist_null_in.page               |   44 +++++
 .../Regress.test_gslist_null_out.page              |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_gtype.page |   44 +++++
 .../Regress.test_gvariant_as.page                  |   38 ++++
 .../Regress.test_gvariant_asv.page                 |   38 ++++
 .../Regress.test_gvariant_i.page                   |   38 ++++
 .../Regress.test_gvariant_s.page                   |   38 ++++
 .../Regress.test_gvariant_v.page                   |   38 ++++
 .../Regress.test_hash_table_callback.page          |   51 +++++
 .../Regress-1.0-C-expected/Regress.test_int.page   |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_int16.page |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_int32.page |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_int64.page |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_int8.page  |   44 +++++
 .../Regress.test_int_out_utf8.page                 |   51 +++++
 .../Regress.test_int_value_arg.page                |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_long.page  |   44 +++++
 .../Regress.test_multi_callback.page               |   44 +++++
 .../Regress.test_multi_double_args.page            |   58 ++++++
 .../Regress.test_multiline_doc_comments.page       |   38 ++++
 .../Regress.test_nested_parameter.page             |   69 +++++++
 .../Regress.test_null_gerror_callback.page         |   44 +++++
 .../Regress.test_owned_gerror_callback.page        |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_short.page |   44 +++++
 .../Regress.test_simple_callback.page              |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_size.page  |   44 +++++
 .../Regress.test_skip_unannotated_callback.page    |   45 +++++
 .../Regress-1.0-C-expected/Regress.test_ssize.page |   44 +++++
 .../Regress.test_strv_in.page                      |   44 +++++
 .../Regress.test_strv_in_gvalue.page               |   38 ++++
 .../Regress.test_strv_out.page                     |   38 ++++
 .../Regress.test_strv_out_c.page                   |   38 ++++
 .../Regress.test_strv_out_container.page           |   38 ++++
 .../Regress.test_strv_outarg.page                  |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_timet.page |   44 +++++
 .../Regress.test_torture_signature_0.page          |   79 ++++++++
 .../Regress.test_torture_signature_1.page          |   79 ++++++++
 .../Regress.test_torture_signature_2.page          |  100 ++++++++++
 .../Regress-1.0-C-expected/Regress.test_uint.page  |   44 +++++
 .../Regress.test_uint16.page                       |   44 +++++
 .../Regress.test_uint32.page                       |   44 +++++
 .../Regress.test_uint64.page                       |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_uint8.page |   44 +++++
 .../Regress-1.0-C-expected/Regress.test_ulong.page |   44 +++++
 .../Regress.test_unichar.page                      |   44 +++++
 .../Regress.test_unsigned_enum_param.page          |   44 +++++
 .../Regress.test_ushort.page                       |   44 +++++
 .../Regress.test_utf8_const_in.page                |   44 +++++
 .../Regress.test_utf8_const_return.page            |   38 ++++
 .../Regress.test_utf8_inout.page                   |   44 +++++
 .../Regress.test_utf8_nonconst_return.page         |   38 ++++
 .../Regress.test_utf8_null_in.page                 |   44 +++++
 .../Regress.test_utf8_null_out.page                |   44 +++++
 .../Regress.test_utf8_out.page                     |   44 +++++
 .../Regress.test_utf8_out_nonconst_return.page     |   44 +++++
 .../Regress.test_utf8_out_out.page                 |   51 +++++
 .../Regress.test_value_get_fundamental_object.page |   44 +++++
 .../Regress.test_value_return.page                 |   44 +++++
 .../Regress.test_value_set_fundamental_object.page |   51 +++++
 .../Regress.test_versioning.page                   |   39 ++++
 .../Regress-1.0-C-expected}/index.page             |    0
 .../Regress.ANNOTATION_CALCULATED_DEFINE.page      |   25 +++
 .../Regress.ANNOTATION_CALCULATED_LARGE.page       |   26 +++
 .../Regress.ANNOTATION_CALCULATED_LARGE_DIV.page   |   25 +++
 .../Regress.ATestError.page                        |   33 ++++
 .../Regress.AliasedTestBoxed.page                  |   25 +++
 .../Regress.AnnotationBitfield.page                |   25 +++
 .../Regress.AnnotationCallback.page                |   25 +++
 .../Regress.AnnotationForeachFunc.page             |   25 +++
 .../Regress.AnnotationListCallback.page            |   25 +++
 .../Regress.AnnotationNotifyFunc.page              |   26 +++
 .../Regress.AnnotationObject-attribute-signal.page |   43 ++++
 ...ess.AnnotationObject-doc-empty-arg-parsing.page |   39 ++++
 ...Regress.AnnotationObject-function-property.page |   29 +++
 .../Regress.AnnotationObject-list-signal.page      |   40 ++++
 .../Regress.AnnotationObject-string-property.page  |   30 +++
 .../Regress.AnnotationObject-string-signal.page    |   41 ++++
 .../Regress.AnnotationObject-tab-property.page     |   31 +++
 .../Regress.AnnotationObject.allow_none.page       |   46 +++++
 .../Regress.AnnotationObject.calleeowns.page       |   40 ++++
 .../Regress.AnnotationObject.calleesowns.page      |   40 ++++
 .../Regress.AnnotationObject.compute_sum.page      |   44 +++++
 .../Regress.AnnotationObject.compute_sum_n.page    |   44 +++++
 .../Regress.AnnotationObject.compute_sum_nz.page   |   44 +++++
 .../Regress.AnnotationObject.create_object.page    |   40 ++++
 .../Regress.AnnotationObject.do_not_use.page       |   40 ++++
 .../Regress.AnnotationObject.extra_annos.page      |   38 ++++
 .../Regress.AnnotationObject.foreach.page          |   44 +++++
 .../Regress.AnnotationObject.get_hash.page         |   41 ++++
 .../Regress.AnnotationObject.get_objects.page      |   42 ++++
 .../Regress.AnnotationObject.get_strings.page      |   41 ++++
 .../Regress.AnnotationObject.hidden_self.page      |   38 ++++
 .../Regress.AnnotationObject.in.page               |   46 +++++
 .../Regress.AnnotationObject.inout.page            |   46 +++++
 .../Regress.AnnotationObject.inout2.page           |   46 +++++
 .../Regress.AnnotationObject.inout3.page           |   46 +++++
 .../Regress.AnnotationObject.method.page           |   40 ++++
 .../Regress.AnnotationObject.notrans.page          |   40 ++++
 .../Regress.AnnotationObject.out.page              |   40 ++++
 .../Regress.AnnotationObject.page                  |   62 ++++++
 .../Regress.AnnotationObject.parse_args.page       |   44 +++++
 .../Regress.AnnotationObject.set_data.page         |   44 +++++
 .../Regress.AnnotationObject.set_data2.page        |   44 +++++
 .../Regress.AnnotationObject.set_data3.page        |   45 +++++
 .../Regress.AnnotationObject.string_out.page       |   40 ++++
 .../Regress.AnnotationObject.use_buffer.page       |   44 +++++
 .../Regress.AnnotationObject.watch.page            |   45 +++++
 .../Regress.AnnotationObject.watch_full.page       |   44 +++++
 .../Regress.AnnotationObject.with_voidp.page       |   44 +++++
 .../Regress.AnnotationStruct.page                  |   25 +++
 .../Regress.DOUBLE_CONSTANT.page                   |   25 +++
 .../Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page      |   25 +++
 .../Regress.FOO_PIE_IS_TASTY.page                  |   25 +++
 .../Regress.FOO_SUCCESS_INT.page                   |   25 +++
 .../Regress.FooASingle.page                        |   29 +++
 .../Regress.FooAddressType.page                    |   33 ++++
 .../Regress.FooBRect.add.page                      |   44 +++++
 .../Regress.FooBRect.new.page                      |   52 +++++
 .../Regress-1.0-Gjs-expected/Regress.FooBRect.page |   25 +++
 .../Regress.FooBUnion.page                         |   25 +++
 .../Regress.FooBoxed.method.page                   |   38 ++++
 .../Regress.FooBoxed.new.page                      |   40 ++++
 .../Regress-1.0-Gjs-expected/Regress.FooBoxed.page |   25 +++
 .../Regress.FooBuffer.page                         |   65 +++++++
 .../Regress.FooBuffer.some_method.page             |   38 ++++
 .../Regress.FooCallback.page                       |   25 +++
 .../Regress.FooDBusData.method.page                |   38 ++++
 .../Regress.FooDBusData.page                       |   25 +++
 .../Regress.FooEnumFullname.page                   |   33 ++++
 .../Regress.FooEnumNoType.page                     |   35 ++++
 .../Regress.FooEnumType.page                       |   33 ++++
 .../Regress-1.0-Gjs-expected/Regress.FooError.page |   33 ++++
 .../Regress-1.0-Gjs-expected/Regress.FooEvent.page |   25 +++
 .../Regress.FooEventAny.page                       |   25 +++
 .../Regress.FooEventExpose.page                    |   25 +++
 .../Regress.FooFlagsNoType.page                    |   25 +++
 .../Regress.FooFlagsType.page                      |   25 +++
 .../Regress.FooForeignStruct.copy.page             |   40 ++++
 .../Regress.FooForeignStruct.new.page              |   40 ++++
 .../Regress.FooForeignStruct.page                  |   25 +++
 .../Regress.FooInterface-do_regress_foo.page       |   33 ++++
 .../Regress.FooInterface.do_regress_foo.page       |   44 +++++
 .../Regress.FooInterface.page                      |   59 ++++++
 .../Regress.FooInterface.static_method.page        |   44 +++++
 .../Regress.FooObject-hidden.page                  |   29 +++
 .../Regress.FooObject-read_fn.page                 |   35 ++++
 .../Regress.FooObject-signal.page                  |   43 ++++
 .../Regress.FooObject-string.page                  |   29 +++
 .../Regress.FooObject-virtual_method.page          |   35 ++++
 .../Regress.FooObject.a_global_method.page         |   44 +++++
 .../Regress.FooObject.append_new_stack_layer.page  |   46 +++++
 .../Regress.FooObject.dup_name.page                |   40 ++++
 .../Regress.FooObject.external_type.page           |   40 ++++
 .../Regress.FooObject.get_default.page             |   41 ++++
 .../Regress.FooObject.get_name.page                |   40 ++++
 .../Regress.FooObject.handle_glyph.page            |   44 +++++
 .../Regress.FooObject.is_it_time_yet.page          |   44 +++++
 .../Regress.FooObject.new.page                     |   40 ++++
 .../Regress.FooObject.new_as_super.page            |   40 ++++
 .../Regress.FooObject.new_cookie.page              |   46 +++++
 .../Regress.FooObject.page                         |   62 ++++++
 .../Regress.FooObject.read.page                    |   50 +++++
 .../Regress.FooObject.skipped_method.page          |   38 ++++
 .../Regress.FooObject.static_meth.page             |   40 ++++
 .../Regress.FooObject.take_all.page                |   47 +++++
 .../Regress.FooObject.various.page                 |   50 +++++
 .../Regress.FooObject.virtual_method.page          |   46 +++++
 .../Regress.FooObjectCookie.page                   |   25 +++
 .../Regress.FooOtherObject.page                    |   62 ++++++
 .../Regress.FooRectangle.add.page                  |   44 +++++
 .../Regress.FooRectangle.new.page                  |   65 +++++++
 .../Regress.FooRectangle.page                      |   25 +++
 .../Regress.FooSkippable.page                      |   32 +++
 .../Regress.FooStackLayer.page                     |   45 +++++
 .../Regress.FooStruct.page                         |   25 +++
 .../Regress.FooSubInterface-destroy-event.page     |   37 ++++
 .../Regress.FooSubInterface-destroy_event.page     |   31 +++
 .../Regress.FooSubInterface-do_bar.page            |   31 +++
 .../Regress.FooSubInterface-do_baz.page            |   33 ++++
 .../Regress.FooSubInterface.do_bar.page            |   38 ++++
 .../Regress.FooSubInterface.do_baz.page            |   44 +++++
 .../Regress.FooSubInterface.page                   |   59 ++++++
 .../Regress.FooSubobject.new.page                  |   40 ++++
 .../Regress.FooSubobject.page                      |   65 +++++++
 .../Regress.FooThingWithArray.page                 |   25 +++
 .../Regress-1.0-Gjs-expected/Regress.FooUnion.page |   25 +++
 .../Regress.FooUtilityStruct.page                  |   25 +++
 .../Regress.FooVarargsCallback.page                |   25 +++
 .../Regress.FooXEvent.page                         |   25 +++
 .../Regress.GUINT64_CONSTANT.page                  |   25 +++
 .../Regress.GUINT64_CONSTANTA.page                 |   25 +++
 .../Regress.G_GINT64_CONSTANT.page                 |   25 +++
 .../Regress.INT_CONSTANT.page                      |   25 +++
 .../Regress-1.0-Gjs-expected/Regress.IntSet.page   |   25 +++
 .../Regress.LONG_STRING_CONSTANT.page              |   25 +++
 .../Regress.LikeGnomeKeyringPasswordSchema.page    |   25 +++
 .../Regress.MAXUINT64.page                         |   25 +++
 .../Regress-1.0-Gjs-expected/Regress.MININT64.page |   25 +++
 .../Regress.Mixed_Case_Constant.page               |   25 +++
 .../Regress.NEGATIVE_INT_CONSTANT.page             |   25 +++
 .../Regress.PtrArrayAlias.page                     |   25 +++
 .../Regress.STRING_CONSTANT.page                   |   25 +++
 .../Regress.SkippedStructure.page                  |   26 +++
 .../Regress.TestABCError.page                      |   33 ++++
 .../Regress.TestBoxed.copy.page                    |   40 ++++
 .../Regress.TestBoxed.equals.page                  |   46 +++++
 .../Regress.TestBoxed.new.page                     |   40 ++++
 ...ess.TestBoxed.new_alternative_constructor1.page |   46 +++++
 ...ess.TestBoxed.new_alternative_constructor2.page |   52 +++++
 ...ess.TestBoxed.new_alternative_constructor3.page |   46 +++++
 .../Regress.TestBoxed.page                         |   25 +++
 .../Regress.TestBoxedB.copy.page                   |   40 ++++
 .../Regress.TestBoxedB.new.page                    |   52 +++++
 .../Regress.TestBoxedB.page                        |   25 +++
 .../Regress.TestBoxedC.new.page                    |   40 ++++
 .../Regress.TestBoxedC.page                        |   25 +++
 .../Regress.TestBoxedD.copy.page                   |   40 ++++
 .../Regress.TestBoxedD.free.page                   |   38 ++++
 .../Regress.TestBoxedD.get_magic.page              |   40 ++++
 .../Regress.TestBoxedD.new.page                    |   52 +++++
 .../Regress.TestBoxedD.page                        |   25 +++
 .../Regress.TestCallback.page                      |   25 +++
 .../Regress.TestCallbackArray.page                 |   25 +++
 .../Regress.TestCallbackFull.page                  |   25 +++
 .../Regress.TestCallbackGError.page                |   25 +++
 .../Regress.TestCallbackHashtable.page             |   25 +++
 .../Regress.TestCallbackOwnedGError.page           |   25 +++
 .../Regress.TestCallbackUserData.page              |   25 +++
 .../Regress.TestDEFError.page                      |   33 ++++
 .../Regress-1.0-Gjs-expected/Regress.TestEnum.page |   35 ++++
 .../Regress.TestEnumNoGEnum.page                   |   33 ++++
 .../Regress.TestEnumUnsigned.page                  |   31 +++
 .../Regress.TestError.page                         |   33 ++++
 .../Regress.TestFlags.page                         |   25 +++
 .../Regress.TestFloating.new.page                  |   40 ++++
 .../Regress.TestFloating.page                      |   65 +++++++
 .../Regress.TestFundamentalObject.page             |   59 ++++++
 .../Regress.TestFundamentalObject.ref.page         |   40 ++++
 .../Regress.TestFundamentalObject.unref.page       |   38 ++++
 .../Regress.TestFundamentalObjectCopyFunction.page |   25 +++
 ...ress.TestFundamentalObjectFinalizeFunction.page |   25 +++
 .../Regress.TestFundamentalSubObject.new.page      |   46 +++++
 .../Regress.TestFundamentalSubObject.page          |   62 ++++++
 .../Regress.TestInheritDrawable.do_foo.page        |   44 +++++
 ...ess.TestInheritDrawable.do_foo_maybe_throw.page |   44 +++++
 .../Regress.TestInheritDrawable.get_origin.page    |   38 ++++
 .../Regress.TestInheritDrawable.get_size.page      |   38 ++++
 .../Regress.TestInheritDrawable.page               |   62 ++++++
 .../Regress.TestInheritPixmapObjectClass.page      |   25 +++
 .../Regress.TestInterface.page                     |   59 ++++++
 .../Regress.TestObj-all.page                       |   37 ++++
 .../Regress.TestObj-allow_none_vfunc.page          |   33 ++++
 .../Regress.TestObj-bare.page                      |   29 +++
 .../Regress.TestObj-boxed.page                     |   29 +++
 .../Regress.TestObj-cleanup.page                   |   37 ++++
 .../Regress.TestObj-double.page                    |   29 +++
 .../Regress.TestObj-first.page                     |   37 ++++
 .../Regress.TestObj-float.page                     |   29 +++
 .../Regress.TestObj-gtype.page                     |   29 +++
 .../Regress.TestObj-hash-table-old.page            |   29 +++
 .../Regress.TestObj-hash-table.page                |   29 +++
 .../Regress.TestObj-int.page                       |   29 +++
 .../Regress.TestObj-list-old.page                  |   29 +++
 .../Regress.TestObj-list.page                      |   29 +++
 .../Regress.TestObj-matrix.page                    |   37 ++++
 .../Regress.TestObj-sig-with-array-prop.page       |   40 ++++
 .../Regress.TestObj-sig-with-foreign-struct.page   |   39 ++++
 .../Regress.TestObj-sig-with-hash-prop.page        |   40 ++++
 .../Regress.TestObj-sig-with-int64-prop.page       |   42 ++++
 .../Regress.TestObj-sig-with-intarray-ret.page     |   39 ++++
 .../Regress.TestObj-sig-with-obj.page              |   40 ++++
 .../Regress.TestObj-sig-with-strv.page             |   39 ++++
 .../Regress.TestObj-sig-with-uint64-prop.page      |   42 ++++
 .../Regress.TestObj-string.page                    |   29 +++
 ...Regress.TestObj-test-with-static-scope-arg.page |   39 ++++
 .../Regress.TestObj-test.page                      |   37 ++++
 .../Regress.TestObj.constructor.page               |   40 ++++
 .../Regress.TestObj.do_matrix.page                 |   48 +++++
 ...gress.TestObj.emit_sig_with_foreign_struct.page |   38 ++++
 .../Regress.TestObj.emit_sig_with_int64.page       |   38 ++++
 .../Regress.TestObj.emit_sig_with_obj.page         |   38 ++++
 .../Regress.TestObj.emit_sig_with_uint64.page      |   38 ++++
 .../Regress.TestObj.forced_method.page             |   38 ++++
 .../Regress.TestObj.instance_method.page           |   40 ++++
 .../Regress.TestObj.instance_method_callback.page  |   44 +++++
 .../Regress.TestObj.new.page                       |   46 +++++
 .../Regress.TestObj.new_callback.page              |   46 +++++
 .../Regress.TestObj.new_from_file.page             |   46 +++++
 .../Regress.TestObj.null_out.page                  |   38 ++++
 .../Regress-1.0-Gjs-expected/Regress.TestObj.page  |   62 ++++++
 .../Regress.TestObj.set_bare.page                  |   44 +++++
 .../Regress.TestObj.skip_inout_param.page          |   70 +++++++
 .../Regress.TestObj.skip_out_param.page            |   70 +++++++
 .../Regress.TestObj.skip_param.page                |   70 +++++++
 .../Regress.TestObj.skip_return_val.page           |   70 +++++++
 .../Regress.TestObj.skip_return_val_no_out.page    |   47 +++++
 .../Regress.TestObj.static_method.page             |   46 +++++
 .../Regress.TestObj.static_method_callback.page    |   44 +++++
 .../Regress.TestObj.torture_signature_0.page       |   56 ++++++
 .../Regress.TestObj.torture_signature_1.page       |   58 ++++++
 .../Regress.TestOtherError.page                    |   33 ++++
 .../Regress.TestPrivateEnum.page                   |   25 +++
 .../Regress.TestPrivateStruct.page                 |   25 +++
 .../Regress.TestSimpleBoxedA.const_return.page     |   40 ++++
 .../Regress.TestSimpleBoxedA.copy.page             |   40 ++++
 .../Regress.TestSimpleBoxedA.equals.page           |   46 +++++
 .../Regress.TestSimpleBoxedA.page                  |   25 +++
 .../Regress.TestSimpleBoxedB.copy.page             |   40 ++++
 .../Regress.TestSimpleBoxedB.page                  |   25 +++
 .../Regress.TestSimpleCallback.page                |   25 +++
 .../Regress.TestStructA.clone.page                 |   38 ++++
 .../Regress.TestStructA.page                       |   25 +++
 .../Regress.TestStructA.parse.page                 |   44 +++++
 .../Regress.TestStructB.clone.page                 |   38 ++++
 .../Regress.TestStructB.page                       |   25 +++
 .../Regress.TestStructC.page                       |   25 +++
 .../Regress.TestStructD.page                       |   25 +++
 .../Regress.TestStructE.page                       |   25 +++
 .../Regress.TestStructE__some_union__union.page    |   25 +++
 .../Regress.TestStructF.page                       |   25 +++
 .../Regress.TestStructFixedArray.frob.page         |   38 ++++
 .../Regress.TestStructFixedArray.page              |   25 +++
 .../Regress.TestSubObj.instance_method.page        |   40 ++++
 .../Regress.TestSubObj.new.page                    |   40 ++++
 .../Regress.TestSubObj.page                        |   65 +++++++
 .../Regress.TestSubObj.unset_bare.page             |   38 ++++
 .../Regress.TestTypeGUInt64.page                   |   25 +++
 .../Regress.TestWi8021x-testbool.page              |   29 +++
 .../Regress.TestWi8021x.get_testbool.page          |   40 ++++
 .../Regress.TestWi8021x.new.page                   |   40 ++++
 .../Regress.TestWi8021x.page                       |   62 ++++++
 .../Regress.TestWi8021x.set_testbool.page          |   44 +++++
 .../Regress.TestWi8021x.static_method.page         |   46 +++++
 .../Regress.UTF8_CONSTANT.page                     |   25 +++
 .../Regress.VaListAlias.page                       |   25 +++
 .../Regress.aliased_caller_alloc.page              |   38 ++++
 .../Regress.annotation_attribute_func.page         |   52 +++++
 .../Regress.annotation_custom_destroy.page         |   45 +++++
 .../Regress.annotation_get_source_file.page        |   40 ++++
 .../Regress.annotation_init.page                   |   44 +++++
 ...ress.annotation_invalid_regress_annotation.page |   44 +++++
 .../Regress.annotation_ptr_array.page              |   44 +++++
 .../Regress.annotation_return_array.page           |   40 ++++
 .../Regress.annotation_return_filename.page        |   40 ++++
 .../Regress.annotation_set_source_file.page        |   44 +++++
 ...s.annotation_space_after_comment_bug631690.page |   38 ++++
 .../Regress.annotation_string_array_length.page    |   44 +++++
 .../Regress.annotation_string_zero_terminated.page |   40 ++++
 ...ress.annotation_string_zero_terminated_out.page |   44 +++++
 .../Regress.annotation_test_parsing_bug630862.page |   40 ++++
 .../Regress.annotation_transfer_floating.page      |   40 ++++
 .../Regress.annotation_versioned.page              |   39 ++++
 .../Regress.atest_error_quark.page                 |   40 ++++
 .../Regress.foo_async_ready_callback.page          |   50 +++++
 .../Regress.foo_destroy_notify_callback.page       |   44 +++++
 .../Regress-1.0-Gjs-expected/Regress.foo_init.page |   40 ++++
 .../Regress.foo_method_external_references.page    |   62 ++++++
 .../Regress.foo_not_a_constructor_new.page         |   41 ++++
 .../Regress.foo_skip_me.page                       |   45 +++++
 .../Regress.foo_some_variant.page                  |   50 +++++
 .../Regress.foo_some_variant_ptr.page              |   50 +++++
 .../Regress.foo_test_array.page                    |   40 ++++
 .../Regress.foo_test_const_char_param.page         |   44 +++++
 .../Regress.foo_test_const_char_retval.page        |   40 ++++
 .../Regress.foo_test_const_struct_param.page       |   44 +++++
 .../Regress.foo_test_const_struct_retval.page      |   40 ++++
 .../Regress.foo_test_string_array.page             |   44 +++++
 .../Regress.foo_test_string_array_with_g.page      |   44 +++++
 .../Regress.foo_test_unsigned_qualifier.page       |   44 +++++
 .../Regress.foo_test_unsigned_type.page            |   44 +++++
 .../Regress.foo_test_varargs_callback.page         |   50 +++++
 .../Regress.foo_test_varargs_callback2.page        |   44 +++++
 .../Regress.foo_test_varargs_callback3.page        |   50 +++++
 .../Regress.func_obj_null_in.page                  |   44 +++++
 .../Regress.global_get_flags_out.page              |   38 ++++
 .../Regress.has_parameter_named_attrs.page         |   51 +++++
 .../Regress.introspectable_via_alias.page          |   44 +++++
 .../Regress.not_introspectable_via_alias.page      |   44 +++++
 ...ess.random_function_with_skipped_structure.page |   56 ++++++
 .../Regress.set_abort_on_error.page                |   44 +++++
 .../Regress.test_array_callback.page               |   46 +++++
 .../Regress.test_array_fixed_out_objects.page      |   38 ++++
 .../Regress.test_array_fixed_size_int_in.page      |   46 +++++
 .../Regress.test_array_fixed_size_int_out.page     |   38 ++++
 .../Regress.test_array_fixed_size_int_return.page  |   40 ++++
 .../Regress.test_array_gint16_in.page              |   46 +++++
 .../Regress.test_array_gint32_in.page              |   46 +++++
 .../Regress.test_array_gint64_in.page              |   46 +++++
 .../Regress.test_array_gint8_in.page               |   46 +++++
 .../Regress.test_array_gtype_in.page               |   46 +++++
 .../Regress.test_array_int_full_out.page           |   40 ++++
 .../Regress.test_array_int_in.page                 |   46 +++++
 .../Regress.test_array_int_inout.page              |   44 +++++
 .../Regress.test_array_int_none_out.page           |   40 ++++
 .../Regress.test_array_int_null_in.page            |   44 +++++
 .../Regress.test_array_int_null_out.page           |   38 ++++
 .../Regress.test_array_int_out.page                |   38 ++++
 .../Regress.test_async_ready_callback.page         |   44 +++++
 .../Regress.test_boolean.page                      |   46 +++++
 .../Regress.test_boolean_false.page                |   46 +++++
 .../Regress.test_boolean_true.page                 |   46 +++++
 .../Regress.test_cairo_context_full_return.page    |   40 ++++
 .../Regress.test_cairo_context_none_in.page        |   44 +++++
 .../Regress.test_cairo_surface_full_out.page       |   38 ++++
 .../Regress.test_cairo_surface_full_return.page    |   40 ++++
 .../Regress.test_cairo_surface_none_in.page        |   44 +++++
 .../Regress.test_cairo_surface_none_return.page    |   40 ++++
 .../Regress.test_callback.page                     |   46 +++++
 .../Regress.test_callback_async.page               |   44 +++++
 .../Regress.test_callback_destroy_notify.page      |   47 +++++
 ....test_callback_destroy_notify_no_user_data.page |   47 +++++
 .../Regress.test_callback_thaw_async.page          |   40 ++++
 .../Regress.test_callback_thaw_notifications.page  |   42 ++++
 .../Regress.test_callback_user_data.page           |   47 +++++
 .../Regress.test_closure.page                      |   46 +++++
 .../Regress.test_closure_one_arg.page              |   52 +++++
 .../Regress.test_closure_variant.page              |   52 +++++
 .../Regress.test_date_in_gvalue.page               |   40 ++++
 .../Regress.test_def_error_quark.page              |   40 ++++
 .../Regress.test_double.page                       |   46 +++++
 .../Regress.test_filename_return.page              |   40 ++++
 .../Regress.test_float.page                        |   46 +++++
 .../Regress.test_garray_container_return.page      |   40 ++++
 .../Regress.test_garray_full_return.page           |   40 ++++
 .../Regress.test_gerror_callback.page              |   44 +++++
 .../Regress.test_ghash_container_return.page       |   40 ++++
 .../Regress.test_ghash_everything_return.page      |   40 ++++
 .../Regress.test_ghash_gvalue_in.page              |   44 +++++
 .../Regress.test_ghash_gvalue_return.page          |   40 ++++
 ...egress.test_ghash_nested_everything_return.page |   40 ++++
 ...gress.test_ghash_nested_everything_return2.page |   41 ++++
 .../Regress.test_ghash_nothing_in.page             |   44 +++++
 .../Regress.test_ghash_nothing_in2.page            |   44 +++++
 .../Regress.test_ghash_nothing_return.page         |   40 ++++
 .../Regress.test_ghash_nothing_return2.page        |   40 ++++
 .../Regress.test_ghash_null_in.page                |   44 +++++
 .../Regress.test_ghash_null_out.page               |   38 ++++
 .../Regress.test_ghash_null_return.page            |   40 ++++
 .../Regress.test_glist_container_return.page       |   40 ++++
 .../Regress.test_glist_everything_return.page      |   40 ++++
 .../Regress.test_glist_nothing_in.page             |   44 +++++
 .../Regress.test_glist_nothing_in2.page            |   44 +++++
 .../Regress.test_glist_nothing_return.page         |   40 ++++
 .../Regress.test_glist_nothing_return2.page        |   40 ++++
 .../Regress.test_glist_null_in.page                |   44 +++++
 .../Regress.test_glist_null_out.page               |   38 ++++
 .../Regress.test_gslist_container_return.page      |   40 ++++
 .../Regress.test_gslist_everything_return.page     |   40 ++++
 .../Regress.test_gslist_nothing_in.page            |   44 +++++
 .../Regress.test_gslist_nothing_in2.page           |   44 +++++
 .../Regress.test_gslist_nothing_return.page        |   40 ++++
 .../Regress.test_gslist_nothing_return2.page       |   40 ++++
 .../Regress.test_gslist_null_in.page               |   44 +++++
 .../Regress.test_gslist_null_out.page              |   38 ++++
 .../Regress.test_gtype.page                        |   46 +++++
 .../Regress.test_gvariant_as.page                  |   40 ++++
 .../Regress.test_gvariant_asv.page                 |   40 ++++
 .../Regress.test_gvariant_i.page                   |   40 ++++
 .../Regress.test_gvariant_s.page                   |   40 ++++
 .../Regress.test_gvariant_v.page                   |   40 ++++
 .../Regress.test_hash_table_callback.page          |   50 +++++
 .../Regress-1.0-Gjs-expected/Regress.test_int.page |   46 +++++
 .../Regress.test_int16.page                        |   46 +++++
 .../Regress.test_int32.page                        |   46 +++++
 .../Regress.test_int64.page                        |   46 +++++
 .../Regress.test_int8.page                         |   46 +++++
 .../Regress.test_int_out_utf8.page                 |   44 +++++
 .../Regress.test_int_value_arg.page                |   46 +++++
 .../Regress.test_long.page                         |   46 +++++
 .../Regress.test_multi_callback.page               |   46 +++++
 .../Regress.test_multi_double_args.page            |   44 +++++
 .../Regress.test_multiline_doc_comments.page       |   38 ++++
 .../Regress.test_nested_parameter.page             |   69 +++++++
 .../Regress.test_null_gerror_callback.page         |   44 +++++
 .../Regress.test_owned_gerror_callback.page        |   44 +++++
 .../Regress.test_short.page                        |   46 +++++
 .../Regress.test_simple_callback.page              |   44 +++++
 .../Regress.test_size.page                         |   46 +++++
 .../Regress.test_skip_unannotated_callback.page    |   45 +++++
 .../Regress.test_ssize.page                        |   46 +++++
 .../Regress.test_strv_in.page                      |   46 +++++
 .../Regress.test_strv_in_gvalue.page               |   40 ++++
 .../Regress.test_strv_out.page                     |   40 ++++
 .../Regress.test_strv_out_c.page                   |   40 ++++
 .../Regress.test_strv_out_container.page           |   40 ++++
 .../Regress.test_strv_outarg.page                  |   38 ++++
 .../Regress.test_timet.page                        |   46 +++++
 .../Regress.test_torture_signature_0.page          |   56 ++++++
 .../Regress.test_torture_signature_1.page          |   58 ++++++
 .../Regress.test_torture_signature_2.page          |   62 ++++++
 .../Regress.test_uint.page                         |   46 +++++
 .../Regress.test_uint16.page                       |   46 +++++
 .../Regress.test_uint32.page                       |   46 +++++
 .../Regress.test_uint64.page                       |   46 +++++
 .../Regress.test_uint8.page                        |   46 +++++
 .../Regress.test_ulong.page                        |   46 +++++
 .../Regress.test_unichar.page                      |   46 +++++
 .../Regress.test_unsigned_enum_param.page          |   46 +++++
 .../Regress.test_ushort.page                       |   46 +++++
 .../Regress.test_utf8_const_in.page                |   44 +++++
 .../Regress.test_utf8_const_return.page            |   40 ++++
 .../Regress.test_utf8_inout.page                   |   44 +++++
 .../Regress.test_utf8_nonconst_return.page         |   40 ++++
 .../Regress.test_utf8_null_in.page                 |   44 +++++
 .../Regress.test_utf8_null_out.page                |   38 ++++
 .../Regress.test_utf8_out.page                     |   38 ++++
 .../Regress.test_utf8_out_nonconst_return.page     |   40 ++++
 .../Regress.test_utf8_out_out.page                 |   38 ++++
 .../Regress.test_value_get_fundamental_object.page |   46 +++++
 .../Regress.test_value_return.page                 |   46 +++++
 .../Regress.test_value_set_fundamental_object.page |   50 +++++
 .../Regress.test_versioning.page                   |   39 ++++
 .../Regress-1.0-Gjs-expected}/index.page           |    0
 .../Regress.ANNOTATION_CALCULATED_DEFINE.page      |   25 +++
 .../Regress.ANNOTATION_CALCULATED_LARGE.page       |   26 +++
 .../Regress.ANNOTATION_CALCULATED_LARGE_DIV.page   |   25 +++
 .../Regress.ATestError.page                        |   33 ++++
 .../Regress.AliasedTestBoxed.page                  |   25 +++
 .../Regress.AnnotationBitfield.page                |   25 +++
 .../Regress.AnnotationCallback.page                |   25 +++
 .../Regress.AnnotationForeachFunc.page             |   25 +++
 .../Regress.AnnotationListCallback.page            |   25 +++
 .../Regress.AnnotationNotifyFunc.page              |   26 +++
 .../Regress.AnnotationObject-attribute-signal.page |   43 ++++
 ...ess.AnnotationObject-doc-empty-arg-parsing.page |   39 ++++
 ...Regress.AnnotationObject-function-property.page |   29 +++
 .../Regress.AnnotationObject-list-signal.page      |   40 ++++
 .../Regress.AnnotationObject-string-property.page  |   30 +++
 .../Regress.AnnotationObject-string-signal.page    |   41 ++++
 .../Regress.AnnotationObject-tab-property.page     |   31 +++
 .../Regress.AnnotationObject.allow_none.page       |   53 +++++
 .../Regress.AnnotationObject.calleeowns.page       |   53 +++++
 .../Regress.AnnotationObject.calleesowns.page      |   59 ++++++
 .../Regress.AnnotationObject.compute_sum.page      |   51 +++++
 .../Regress.AnnotationObject.compute_sum_n.page    |   57 ++++++
 .../Regress.AnnotationObject.compute_sum_nz.page   |   57 ++++++
 .../Regress.AnnotationObject.create_object.page    |   47 +++++
 .../Regress.AnnotationObject.do_not_use.page       |   47 +++++
 .../Regress.AnnotationObject.extra_annos.page      |   45 +++++
 .../Regress.AnnotationObject.foreach.page          |   57 ++++++
 .../Regress.AnnotationObject.get_hash.page         |   48 +++++
 .../Regress.AnnotationObject.get_objects.page      |   49 +++++
 .../Regress.AnnotationObject.get_strings.page      |   48 +++++
 .../Regress.AnnotationObject.hidden_self.page      |   45 +++++
 .../Regress.AnnotationObject.in.page               |   53 +++++
 .../Regress.AnnotationObject.inout.page            |   53 +++++
 .../Regress.AnnotationObject.inout2.page           |   53 +++++
 .../Regress.AnnotationObject.inout3.page           |   53 +++++
 .../Regress.AnnotationObject.method.page           |   47 +++++
 .../Regress.AnnotationObject.notrans.page          |   47 +++++
 .../Regress.AnnotationObject.out.page              |   53 +++++
 .../Regress.AnnotationObject.page                  |   62 ++++++
 .../Regress.AnnotationObject.parse_args.page       |   57 ++++++
 .../Regress.AnnotationObject.set_data.page         |   57 ++++++
 .../Regress.AnnotationObject.set_data2.page        |   57 ++++++
 .../Regress.AnnotationObject.set_data3.page        |   58 ++++++
 .../Regress.AnnotationObject.string_out.page       |   53 +++++
 .../Regress.AnnotationObject.use_buffer.page       |   51 +++++
 .../Regress.AnnotationObject.watch.page            |   58 ++++++
 .../Regress.AnnotationObject.watch_full.page       |   63 ++++++
 .../Regress.AnnotationObject.with_voidp.page       |   51 +++++
 .../Regress.AnnotationStruct.page                  |   25 +++
 .../Regress.DOUBLE_CONSTANT.page                   |   25 +++
 .../Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page      |   25 +++
 .../Regress.FOO_PIE_IS_TASTY.page                  |   25 +++
 .../Regress.FOO_SUCCESS_INT.page                   |   25 +++
 .../Regress.FooASingle.page                        |   29 +++
 .../Regress.FooAddressType.page                    |   33 ++++
 .../Regress.FooBRect.add.page                      |   51 +++++
 .../Regress.FooBRect.page                          |   25 +++
 .../Regress.FooBUnion.page                         |   25 +++
 .../Regress.FooBoxed.method.page                   |   45 +++++
 .../Regress.FooBoxed.page                          |   25 +++
 .../Regress.FooBuffer.page                         |   65 +++++++
 .../Regress.FooBuffer.some_method.page             |   45 +++++
 .../Regress.FooCallback.page                       |   25 +++
 .../Regress.FooDBusData.method.page                |   45 +++++
 .../Regress.FooDBusData.page                       |   25 +++
 .../Regress.FooEnumFullname.page                   |   33 ++++
 .../Regress.FooEnumNoType.page                     |   35 ++++
 .../Regress.FooEnumType.page                       |   33 ++++
 .../Regress.FooError.page                          |   33 ++++
 .../Regress.FooEvent.page                          |   25 +++
 .../Regress.FooEventAny.page                       |   25 +++
 .../Regress.FooEventExpose.page                    |   25 +++
 .../Regress.FooFlagsNoType.page                    |   25 +++
 .../Regress.FooFlagsType.page                      |   25 +++
 .../Regress.FooForeignStruct.copy.page             |   47 +++++
 .../Regress.FooForeignStruct.page                  |   25 +++
 .../Regress.FooInterface-do_regress_foo.page       |   36 ++++
 .../Regress.FooInterface.do_regress_foo.page       |   51 +++++
 .../Regress.FooInterface.page                      |   59 ++++++
 .../Regress.FooInterface.static_method.page        |   45 +++++
 .../Regress.FooObject-hidden.page                  |   29 +++
 .../Regress.FooObject-read_fn.page                 |   38 ++++
 .../Regress.FooObject-signal.page                  |   43 ++++
 .../Regress.FooObject-string.page                  |   29 +++
 .../Regress.FooObject-virtual_method.page          |   38 ++++
 .../Regress.FooObject.a_global_method.page         |   45 +++++
 .../Regress.FooObject.append_new_stack_layer.page  |   53 +++++
 .../Regress.FooObject.dup_name.page                |   47 +++++
 .../Regress.FooObject.external_type.page           |   47 +++++
 .../Regress.FooObject.get_default.page             |   41 ++++
 .../Regress.FooObject.get_name.page                |   47 +++++
 .../Regress.FooObject.handle_glyph.page            |   51 +++++
 .../Regress.FooObject.is_it_time_yet.page          |   51 +++++
 .../Regress.FooObject.new_cookie.page              |   53 +++++
 .../Regress.FooObject.page                         |   62 ++++++
 .../Regress.FooObject.read.page                    |   57 ++++++
 .../Regress.FooObject.skipped_method.page          |   45 +++++
 .../Regress.FooObject.static_meth.page             |   40 ++++
 .../Regress.FooObject.take_all.page                |   54 +++++
 .../Regress.FooObject.various.page                 |   57 ++++++
 .../Regress.FooObject.virtual_method.page          |   53 +++++
 .../Regress.FooObjectCookie.page                   |   25 +++
 .../Regress.FooOtherObject.page                    |   62 ++++++
 .../Regress.FooRectangle.add.page                  |   51 +++++
 .../Regress.FooRectangle.new.page                  |   66 +++++++
 .../Regress.FooRectangle.page                      |   25 +++
 .../Regress.FooSkippable.page                      |   32 +++
 .../Regress.FooStackLayer.page                     |   45 +++++
 .../Regress.FooStruct.page                         |   25 +++
 .../Regress.FooSubInterface-destroy-event.page     |   37 ++++
 .../Regress.FooSubInterface-destroy_event.page     |   34 ++++
 .../Regress.FooSubInterface-do_bar.page            |   34 ++++
 .../Regress.FooSubInterface-do_baz.page            |   38 ++++
 .../Regress.FooSubInterface.do_bar.page            |   45 +++++
 .../Regress.FooSubInterface.do_baz.page            |   57 ++++++
 .../Regress.FooSubInterface.page                   |   59 ++++++
 .../Regress.FooSubobject.page                      |   65 +++++++
 .../Regress.FooThingWithArray.page                 |   25 +++
 .../Regress.FooUnion.page                          |   25 +++
 .../Regress.FooUtilityStruct.page                  |   25 +++
 .../Regress.FooVarargsCallback.page                |   25 +++
 .../Regress.FooXEvent.page                         |   25 +++
 .../Regress.GUINT64_CONSTANT.page                  |   25 +++
 .../Regress.GUINT64_CONSTANTA.page                 |   25 +++
 .../Regress.G_GINT64_CONSTANT.page                 |   25 +++
 .../Regress.INT_CONSTANT.page                      |   25 +++
 .../Regress.IntSet.page                            |   25 +++
 .../Regress.LONG_STRING_CONSTANT.page              |   25 +++
 .../Regress.LikeGnomeKeyringPasswordSchema.page    |   25 +++
 .../Regress.MAXUINT64.page                         |   25 +++
 .../Regress.MININT64.page                          |   25 +++
 .../Regress.Mixed_Case_Constant.page               |   25 +++
 .../Regress.NEGATIVE_INT_CONSTANT.page             |   25 +++
 .../Regress.PtrArrayAlias.page                     |   25 +++
 .../Regress.STRING_CONSTANT.page                   |   25 +++
 .../Regress.SkippedStructure.page                  |   26 +++
 .../Regress.TestABCError.page                      |   33 ++++
 .../Regress.TestBoxed.copy.page                    |   47 +++++
 .../Regress.TestBoxed.equals.page                  |   53 +++++
 .../Regress.TestBoxed.page                         |   25 +++
 .../Regress.TestBoxedB.copy.page                   |   47 +++++
 .../Regress.TestBoxedB.page                        |   25 +++
 .../Regress.TestBoxedC.page                        |   25 +++
 .../Regress.TestBoxedD.copy.page                   |   47 +++++
 .../Regress.TestBoxedD.free.page                   |   45 +++++
 .../Regress.TestBoxedD.get_magic.page              |   47 +++++
 .../Regress.TestBoxedD.page                        |   25 +++
 .../Regress.TestCallback.page                      |   25 +++
 .../Regress.TestCallbackArray.page                 |   25 +++
 .../Regress.TestCallbackFull.page                  |   25 +++
 .../Regress.TestCallbackGError.page                |   25 +++
 .../Regress.TestCallbackHashtable.page             |   25 +++
 .../Regress.TestCallbackOwnedGError.page           |   25 +++
 .../Regress.TestCallbackUserData.page              |   25 +++
 .../Regress.TestDEFError.page                      |   33 ++++
 .../Regress.TestEnum.page                          |   35 ++++
 .../Regress.TestEnumNoGEnum.page                   |   33 ++++
 .../Regress.TestEnumUnsigned.page                  |   31 +++
 .../Regress.TestError.page                         |   33 ++++
 .../Regress.TestFlags.page                         |   25 +++
 .../Regress.TestFloating.page                      |   65 +++++++
 .../Regress.TestFundamentalObject.page             |   59 ++++++
 .../Regress.TestFundamentalObject.ref.page         |   47 +++++
 .../Regress.TestFundamentalObject.unref.page       |   45 +++++
 .../Regress.TestFundamentalObjectCopyFunction.page |   25 +++
 ...ress.TestFundamentalObjectFinalizeFunction.page |   25 +++
 .../Regress.TestFundamentalSubObject.page          |   62 ++++++
 .../Regress.TestInheritDrawable.do_foo.page        |   51 +++++
 ...ess.TestInheritDrawable.do_foo_maybe_throw.page |   51 +++++
 .../Regress.TestInheritDrawable.get_origin.page    |   57 ++++++
 .../Regress.TestInheritDrawable.get_size.page      |   57 ++++++
 .../Regress.TestInheritDrawable.page               |   62 ++++++
 .../Regress.TestInheritPixmapObjectClass.page      |   25 +++
 .../Regress.TestInterface.page                     |   59 ++++++
 .../Regress.TestObj-all.page                       |   37 ++++
 .../Regress.TestObj-allow_none_vfunc.page          |   36 ++++
 .../Regress.TestObj-bare.page                      |   29 +++
 .../Regress.TestObj-boxed.page                     |   29 +++
 .../Regress.TestObj-cleanup.page                   |   37 ++++
 .../Regress.TestObj-double.page                    |   29 +++
 .../Regress.TestObj-first.page                     |   37 ++++
 .../Regress.TestObj-float.page                     |   29 +++
 .../Regress.TestObj-gtype.page                     |   29 +++
 .../Regress.TestObj-hash-table-old.page            |   29 +++
 .../Regress.TestObj-hash-table.page                |   29 +++
 .../Regress.TestObj-int.page                       |   29 +++
 .../Regress.TestObj-list-old.page                  |   29 +++
 .../Regress.TestObj-list.page                      |   29 +++
 .../Regress.TestObj-matrix.page                    |   40 ++++
 .../Regress.TestObj-sig-with-array-prop.page       |   40 ++++
 .../Regress.TestObj-sig-with-foreign-struct.page   |   39 ++++
 .../Regress.TestObj-sig-with-hash-prop.page        |   40 ++++
 .../Regress.TestObj-sig-with-int64-prop.page       |   42 ++++
 .../Regress.TestObj-sig-with-intarray-ret.page     |   39 ++++
 .../Regress.TestObj-sig-with-obj.page              |   40 ++++
 .../Regress.TestObj-sig-with-strv.page             |   39 ++++
 .../Regress.TestObj-sig-with-uint64-prop.page      |   42 ++++
 .../Regress.TestObj-string.page                    |   29 +++
 ...Regress.TestObj-test-with-static-scope-arg.page |   39 ++++
 .../Regress.TestObj-test.page                      |   37 ++++
 .../Regress.TestObj.do_matrix.page                 |   55 ++++++
 ...gress.TestObj.emit_sig_with_foreign_struct.page |   45 +++++
 .../Regress.TestObj.emit_sig_with_int64.page       |   45 +++++
 .../Regress.TestObj.emit_sig_with_obj.page         |   45 +++++
 .../Regress.TestObj.emit_sig_with_uint64.page      |   45 +++++
 .../Regress.TestObj.forced_method.page             |   45 +++++
 .../Regress.TestObj.instance_method.page           |   47 +++++
 .../Regress.TestObj.instance_method_callback.page  |   51 +++++
 .../Regress.TestObj.null_out.page                  |   45 +++++
 .../Regress.TestObj.page                           |   62 ++++++
 .../Regress.TestObj.set_bare.page                  |   51 +++++
 .../Regress.TestObj.skip_inout_param.page          |   89 +++++++++
 .../Regress.TestObj.skip_out_param.page            |   89 +++++++++
 .../Regress.TestObj.skip_param.page                |   89 +++++++++
 .../Regress.TestObj.skip_return_val.page           |   89 +++++++++
 .../Regress.TestObj.skip_return_val_no_out.page    |   54 +++++
 .../Regress.TestObj.static_method.page             |   47 +++++
 .../Regress.TestObj.static_method_callback.page    |   45 +++++
 .../Regress.TestObj.torture_signature_0.page       |   81 ++++++++
 .../Regress.TestObj.torture_signature_1.page       |   83 ++++++++
 .../Regress.TestOtherError.page                    |   33 ++++
 .../Regress.TestPrivateEnum.page                   |   25 +++
 .../Regress.TestPrivateStruct.page                 |   25 +++
 .../Regress.TestSimpleBoxedA.const_return.page     |   40 ++++
 .../Regress.TestSimpleBoxedA.copy.page             |   47 +++++
 .../Regress.TestSimpleBoxedA.equals.page           |   53 +++++
 .../Regress.TestSimpleBoxedA.page                  |   25 +++
 .../Regress.TestSimpleBoxedB.copy.page             |   47 +++++
 .../Regress.TestSimpleBoxedB.page                  |   25 +++
 .../Regress.TestSimpleCallback.page                |   25 +++
 .../Regress.TestStructA.clone.page                 |   51 +++++
 .../Regress.TestStructA.page                       |   25 +++
 .../Regress.TestStructA.parse.page                 |   51 +++++
 .../Regress.TestStructB.clone.page                 |   51 +++++
 .../Regress.TestStructB.page                       |   25 +++
 .../Regress.TestStructC.page                       |   25 +++
 .../Regress.TestStructD.page                       |   25 +++
 .../Regress.TestStructE.page                       |   25 +++
 .../Regress.TestStructE__some_union__union.page    |   25 +++
 .../Regress.TestStructF.page                       |   25 +++
 .../Regress.TestStructFixedArray.frob.page         |   45 +++++
 .../Regress.TestStructFixedArray.page              |   25 +++
 .../Regress.TestSubObj.instance_method.page        |   47 +++++
 .../Regress.TestSubObj.page                        |   65 +++++++
 .../Regress.TestSubObj.unset_bare.page             |   45 +++++
 .../Regress.TestTypeGUInt64.page                   |   25 +++
 .../Regress.TestWi8021x-testbool.page              |   29 +++
 .../Regress.TestWi8021x.get_testbool.page          |   47 +++++
 .../Regress.TestWi8021x.page                       |   62 ++++++
 .../Regress.TestWi8021x.set_testbool.page          |   51 +++++
 .../Regress.TestWi8021x.static_method.page         |   47 +++++
 .../Regress.UTF8_CONSTANT.page                     |   25 +++
 .../Regress.VaListAlias.page                       |   25 +++
 .../Regress.aliased_caller_alloc.page              |   45 +++++
 .../Regress.annotation_attribute_func.page         |   53 +++++
 .../Regress.annotation_custom_destroy.page         |   58 ++++++
 .../Regress.annotation_get_source_file.page        |   40 ++++
 .../Regress.annotation_init.page                   |   51 +++++
 ...ress.annotation_invalid_regress_annotation.page |   45 +++++
 .../Regress.annotation_ptr_array.page              |   45 +++++
 .../Regress.annotation_return_array.page           |   47 +++++
 .../Regress.annotation_return_filename.page        |   40 ++++
 .../Regress.annotation_set_source_file.page        |   45 +++++
 ...s.annotation_space_after_comment_bug631690.page |   38 ++++
 .../Regress.annotation_string_array_length.page    |   51 +++++
 .../Regress.annotation_string_zero_terminated.page |   40 ++++
 ...ress.annotation_string_zero_terminated_out.page |   45 +++++
 .../Regress.annotation_test_parsing_bug630862.page |   40 ++++
 .../Regress.annotation_transfer_floating.page      |   40 ++++
 .../Regress.annotation_versioned.page              |   39 ++++
 .../Regress.atest_error_quark.page                 |   40 ++++
 .../Regress.foo_async_ready_callback.page          |   57 ++++++
 .../Regress.foo_destroy_notify_callback.page       |   57 ++++++
 .../Regress.foo_init.page                          |   40 ++++
 .../Regress.foo_method_external_references.page    |   63 ++++++
 .../Regress.foo_not_a_constructor_new.page         |   41 ++++
 .../Regress.foo_skip_me.page                       |   46 +++++
 .../Regress.foo_some_variant.page                  |   51 +++++
 .../Regress.foo_some_variant_ptr.page              |   51 +++++
 .../Regress.foo_test_array.page                    |   40 ++++
 .../Regress.foo_test_const_char_param.page         |   45 +++++
 .../Regress.foo_test_const_char_retval.page        |   40 ++++
 .../Regress.foo_test_const_struct_param.page       |   45 +++++
 .../Regress.foo_test_const_struct_retval.page      |   40 ++++
 .../Regress.foo_test_string_array.page             |   45 +++++
 .../Regress.foo_test_string_array_with_g.page      |   45 +++++
 .../Regress.foo_test_unsigned_qualifier.page       |   45 +++++
 .../Regress.foo_test_unsigned_type.page            |   45 +++++
 .../Regress.foo_test_varargs_callback.page         |   51 +++++
 .../Regress.foo_test_varargs_callback2.page        |   45 +++++
 .../Regress.foo_test_varargs_callback3.page        |   51 +++++
 .../Regress.func_obj_null_in.page                  |   45 +++++
 .../Regress.global_get_flags_out.page              |   45 +++++
 .../Regress.has_parameter_named_attrs.page         |   52 +++++
 .../Regress.introspectable_via_alias.page          |   45 +++++
 .../Regress.not_introspectable_via_alias.page      |   45 +++++
 ...ess.random_function_with_skipped_structure.page |   57 ++++++
 .../Regress.set_abort_on_error.page                |   45 +++++
 .../Regress.test_array_callback.page               |   47 +++++
 .../Regress.test_array_fixed_out_objects.page      |   45 +++++
 .../Regress.test_array_fixed_size_int_in.page      |   47 +++++
 .../Regress.test_array_fixed_size_int_out.page     |   45 +++++
 .../Regress.test_array_fixed_size_int_return.page  |   40 ++++
 .../Regress.test_array_gint16_in.page              |   53 +++++
 .../Regress.test_array_gint32_in.page              |   53 +++++
 .../Regress.test_array_gint64_in.page              |   53 +++++
 .../Regress.test_array_gint8_in.page               |   53 +++++
 .../Regress.test_array_gtype_in.page               |   53 +++++
 .../Regress.test_array_int_full_out.page           |   47 +++++
 .../Regress.test_array_int_in.page                 |   53 +++++
 .../Regress.test_array_int_inout.page              |   51 +++++
 .../Regress.test_array_int_none_out.page           |   47 +++++
 .../Regress.test_array_int_null_in.page            |   51 +++++
 .../Regress.test_array_int_null_out.page           |   51 +++++
 .../Regress.test_array_int_out.page                |   51 +++++
 .../Regress.test_async_ready_callback.page         |   45 +++++
 .../Regress.test_boolean.page                      |   47 +++++
 .../Regress.test_boolean_false.page                |   47 +++++
 .../Regress.test_boolean_true.page                 |   47 +++++
 .../Regress.test_cairo_context_full_return.page    |   40 ++++
 .../Regress.test_cairo_context_none_in.page        |   45 +++++
 .../Regress.test_cairo_surface_full_out.page       |   45 +++++
 .../Regress.test_cairo_surface_full_return.page    |   40 ++++
 .../Regress.test_cairo_surface_none_in.page        |   45 +++++
 .../Regress.test_cairo_surface_none_return.page    |   40 ++++
 .../Regress.test_callback.page                     |   47 +++++
 .../Regress.test_callback_async.page               |   51 +++++
 .../Regress.test_callback_destroy_notify.page      |   60 ++++++
 ....test_callback_destroy_notify_no_user_data.page |   54 +++++
 .../Regress.test_callback_thaw_async.page          |   40 ++++
 .../Regress.test_callback_thaw_notifications.page  |   42 ++++
 .../Regress.test_callback_user_data.page           |   54 +++++
 .../Regress.test_closure.page                      |   47 +++++
 .../Regress.test_closure_one_arg.page              |   53 +++++
 .../Regress.test_closure_variant.page              |   53 +++++
 .../Regress.test_date_in_gvalue.page               |   40 ++++
 .../Regress.test_def_error_quark.page              |   40 ++++
 .../Regress.test_double.page                       |   47 +++++
 .../Regress.test_filename_return.page              |   40 ++++
 .../Regress.test_float.page                        |   47 +++++
 .../Regress.test_garray_container_return.page      |   40 ++++
 .../Regress.test_garray_full_return.page           |   40 ++++
 .../Regress.test_gerror_callback.page              |   45 +++++
 .../Regress.test_ghash_container_return.page       |   40 ++++
 .../Regress.test_ghash_everything_return.page      |   40 ++++
 .../Regress.test_ghash_gvalue_in.page              |   45 +++++
 .../Regress.test_ghash_gvalue_return.page          |   40 ++++
 ...egress.test_ghash_nested_everything_return.page |   40 ++++
 ...gress.test_ghash_nested_everything_return2.page |   41 ++++
 .../Regress.test_ghash_nothing_in.page             |   45 +++++
 .../Regress.test_ghash_nothing_in2.page            |   45 +++++
 .../Regress.test_ghash_nothing_return.page         |   40 ++++
 .../Regress.test_ghash_nothing_return2.page        |   40 ++++
 .../Regress.test_ghash_null_in.page                |   45 +++++
 .../Regress.test_ghash_null_out.page               |   45 +++++
 .../Regress.test_ghash_null_return.page            |   40 ++++
 .../Regress.test_glist_container_return.page       |   40 ++++
 .../Regress.test_glist_everything_return.page      |   40 ++++
 .../Regress.test_glist_nothing_in.page             |   45 +++++
 .../Regress.test_glist_nothing_in2.page            |   45 +++++
 .../Regress.test_glist_nothing_return.page         |   40 ++++
 .../Regress.test_glist_nothing_return2.page        |   40 ++++
 .../Regress.test_glist_null_in.page                |   45 +++++
 .../Regress.test_glist_null_out.page               |   45 +++++
 .../Regress.test_gslist_container_return.page      |   40 ++++
 .../Regress.test_gslist_everything_return.page     |   40 ++++
 .../Regress.test_gslist_nothing_in.page            |   45 +++++
 .../Regress.test_gslist_nothing_in2.page           |   45 +++++
 .../Regress.test_gslist_nothing_return.page        |   40 ++++
 .../Regress.test_gslist_nothing_return2.page       |   40 ++++
 .../Regress.test_gslist_null_in.page               |   45 +++++
 .../Regress.test_gslist_null_out.page              |   45 +++++
 .../Regress.test_gtype.page                        |   47 +++++
 .../Regress.test_gvariant_as.page                  |   40 ++++
 .../Regress.test_gvariant_asv.page                 |   40 ++++
 .../Regress.test_gvariant_i.page                   |   40 ++++
 .../Regress.test_gvariant_s.page                   |   40 ++++
 .../Regress.test_gvariant_v.page                   |   40 ++++
 .../Regress.test_hash_table_callback.page          |   51 +++++
 .../Regress.test_int.page                          |   47 +++++
 .../Regress.test_int16.page                        |   47 +++++
 .../Regress.test_int32.page                        |   47 +++++
 .../Regress.test_int64.page                        |   47 +++++
 .../Regress.test_int8.page                         |   47 +++++
 .../Regress.test_int_out_utf8.page                 |   51 +++++
 .../Regress.test_int_value_arg.page                |   47 +++++
 .../Regress.test_long.page                         |   47 +++++
 .../Regress.test_multi_callback.page               |   47 +++++
 .../Regress.test_multi_double_args.page            |   57 ++++++
 .../Regress.test_multiline_doc_comments.page       |   38 ++++
 .../Regress.test_nested_parameter.page             |   70 +++++++
 .../Regress.test_null_gerror_callback.page         |   45 +++++
 .../Regress.test_owned_gerror_callback.page        |   45 +++++
 .../Regress.test_short.page                        |   47 +++++
 .../Regress.test_simple_callback.page              |   45 +++++
 .../Regress.test_size.page                         |   47 +++++
 .../Regress.test_skip_unannotated_callback.page    |   46 +++++
 .../Regress.test_ssize.page                        |   47 +++++
 .../Regress.test_strv_in.page                      |   47 +++++
 .../Regress.test_strv_in_gvalue.page               |   40 ++++
 .../Regress.test_strv_out.page                     |   40 ++++
 .../Regress.test_strv_out_c.page                   |   40 ++++
 .../Regress.test_strv_out_container.page           |   40 ++++
 .../Regress.test_strv_outarg.page                  |   45 +++++
 .../Regress.test_timet.page                        |   47 +++++
 .../Regress.test_torture_signature_0.page          |   75 +++++++
 .../Regress.test_torture_signature_1.page          |   77 ++++++++
 .../Regress.test_torture_signature_2.page          |   93 +++++++++
 .../Regress.test_uint.page                         |   47 +++++
 .../Regress.test_uint16.page                       |   47 +++++
 .../Regress.test_uint32.page                       |   47 +++++
 .../Regress.test_uint64.page                       |   47 +++++
 .../Regress.test_uint8.page                        |   47 +++++
 .../Regress.test_ulong.page                        |   47 +++++
 .../Regress.test_unichar.page                      |   47 +++++
 .../Regress.test_unsigned_enum_param.page          |   47 +++++
 .../Regress.test_ushort.page                       |   47 +++++
 .../Regress.test_utf8_const_in.page                |   45 +++++
 .../Regress.test_utf8_const_return.page            |   40 ++++
 .../Regress.test_utf8_inout.page                   |   45 +++++
 .../Regress.test_utf8_nonconst_return.page         |   40 ++++
 .../Regress.test_utf8_null_in.page                 |   45 +++++
 .../Regress.test_utf8_null_out.page                |   45 +++++
 .../Regress.test_utf8_out.page                     |   45 +++++
 .../Regress.test_utf8_out_nonconst_return.page     |   47 +++++
 .../Regress.test_utf8_out_out.page                 |   51 +++++
 .../Regress.test_value_get_fundamental_object.page |   47 +++++
 .../Regress.test_value_return.page                 |   47 +++++
 .../Regress.test_value_set_fundamental_object.page |   51 +++++
 .../Regress.test_versioning.page                   |   39 ++++
 .../Regress-1.0-Python-expected}/index.page        |    0
 1389 files changed, 55313 insertions(+), 1825 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 92b3da0..1e0a026 100644
--- a/.gitignore
+++ b/.gitignore
@@ -106,4 +106,4 @@ docs/reference/version.xml
 
 #g-ir-doc-tool tests
 *.page
-!tests/doctool/*-expected/*.page
+!tests/scanner/*-expected/*.page
diff --git a/common.mk b/common.mk
index 87ceaee..28b73c7 100644
--- a/common.mk
+++ b/common.mk
@@ -40,3 +40,9 @@ INTROSPECTION_DOCTOOL = \
         UNINSTALLED_INTROSPECTION_SRCDIR=$(top_srcdir) \
         UNINSTALLED_INTROSPECTION_BUILDDIR=$(top_builddir) \
         $(top_builddir)/g-ir-doc-tool
+
+INTROSPECTION_DOCTOOL_ARGS = \
+    --add-include-path=$(srcdir) \
+    --add-include-path=$(top_srcdir)/gir \
+    --add-include-path=$(builddir) \
+    --add-include-path=$(top_builddir)
diff --git a/configure.ac b/configure.ac
index fc39916..3839473 100644
--- a/configure.ac
+++ b/configure.ac
@@ -312,7 +312,6 @@ tests/offsets/Makefile
 tests/scanner/Makefile
 tests/repository/Makefile
 tests/warn/Makefile
-tests/doctool/Makefile
 docs/Makefile
 docs/reference/Makefile
 gobject-introspection-1.0.pc
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 676d485..b4985b9 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,12 +1,6 @@
 include $(top_srcdir)/common.mk
 
 SUBDIRS = . scanner repository offsets warn
-DIST_SUBDIRS = $(SUBDIRS)
-if BUILD_DOCTOOL
-SUBDIRS += doctool
-else
-DIST_SUBDIRS += doctool
-endif
 
 EXTRA_DIST=
 BUILT_SOURCES=
diff --git a/tests/scanner/Makefile.am b/tests/scanner/Makefile.am
index cf04508..e07bdd3 100644
--- a/tests/scanner/Makefile.am
+++ b/tests/scanner/Makefile.am
@@ -146,7 +146,43 @@ Headeronly-1.0.gir: headeronly.h
 %.gir.check: %.gir
 	@diff -u -U 10 $(srcdir)/$*-expected.gir $*.gir && echo "  TEST  $*.gir"
 
-check-local: Headeronly-1.0.gir $(CHECKGIRS) $(TYPELIBS)
+if BUILD_DOCTOOL
+DOCGIRS = Regress-1.0.gir
+CHECKDOCS = $(DOCGIRS:.gir=-C.page.check) $(DOCGIRS:.gir=-Python.page.check) $(DOCGIRS:.gir=-Gjs.page.check)
+MALLARD_DIRS = $(DOCGIRS:.gir=-C) $(DOCGIRS:.gir=-Python) $(DOCGIRS:.gir=-Gjs)
+EXPECTED_MALLARD_DIRS = $(MALLARD_DIRS:=-expected)
+
+%-C: %.gir
+	$(AM_V_GEN)
+	$(AM_V_at)$(MKDIR_P) $*-C
+	$(AM_V_at)rm -f $*-C/*.page
+	$(AM_V_at)$(INTROSPECTION_DOCTOOL) $(INTROSPECTION_DOCTOOL_ARGS) --language C $*.gir -o $*-C/
+
+%-Python: %.gir
+	$(AM_V_GEN)
+	$(AM_V_at)$(MKDIR_P) $*-Python
+	$(AM_V_at)rm -f $*-Python/*.page
+	$(AM_V_at)$(INTROSPECTION_DOCTOOL) $(INTROSPECTION_DOCTOOL_ARGS) --language Python $*.gir -o $*-Python/
+
+%-Gjs: %.gir
+	$(AM_V_GEN)
+	$(AM_V_at)$(MKDIR_P) $*-Gjs
+	$(AM_V_at)rm -f $*-Gjs/*.page
+	$(AM_V_at)$(INTROSPECTION_DOCTOOL) $(INTROSPECTION_DOCTOOL_ARGS) --language Gjs $*.gir -o $*-Gjs/
+
+%-C.page.check: %-C
+	@diff -u -w -B -U 10 $(srcdir)/$*-C-expected $*-C && echo "  TEST  $*-C"
+
+%-Python.page.check: %-Python
+	@diff -u -w -B -U 10 $(srcdir)/$*-Python-expected $*-Python && echo "  TEST  $*-Python"
+
+%-Gjs.page.check: %-Gjs
+	@diff -u -w -B -U 10 $(srcdir)/$*-Gjs-expected $*-Gjs && echo "  TEST  $*-Gjs"
+else
+CHECKDOCS =
+endif
+
+check-local: Headeronly-1.0.gir $(CHECKGIRS) $(CHECKDOCS) $(TYPELIBS)
 
 EXTRA_DIST += \
 	annotationparser/README					\
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page b/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page
new file mode 100644
index 0000000..ebe71b0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_DEFINE"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_DEFINE</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_LARGE.page b/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_LARGE.page
new file mode 100644
index 0000000..4b38cc0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_LARGE.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_LARGE"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_LARGE</title>
+  
+  
+  
+    <p>Constant to define a calculated large value</p>
+  
+  
+    <p>Since 1.4</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page b/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page
new file mode 100644
index 0000000..d6c8e76
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_LARGE_DIV"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_LARGE_DIV</title>
+  
+  
+  
+    <p>Constant to define a calculated large value</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page b/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page
new file mode 100644
index 0000000..a2ab2ef
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ATestError"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ATestError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page b/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page
new file mode 100644
index 0000000..2229245
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AliasedTestBoxed"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AliasedTestBoxed</title>
+  
+  
+  
+    <p>Typedef TestBoxed to test caller-allocates correctness</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page
new file mode 100644
index 0000000..8cbc832
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationBitfield"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationBitfield</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page
new file mode 100644
index 0000000..30f950c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationCallback</title>
+  
+  
+  
+    <p>This is a callback.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page
new file mode 100644
index 0000000..506ceff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationForeachFunc"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationForeachFunc</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page
new file mode 100644
index 0000000..3f9409e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationListCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationListCallback</title>
+  
+  
+  
+    <p>This is a callback taking a list.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page
new file mode 100644
index 0000000..b2dc717
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationNotifyFunc"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationNotifyFunc</title>
+  
+  
+  
+    <p>This is a callback with a 'closure' argument that is not named
+'user_data' and hence has to be annotated.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page
new file mode 100644
index 0000000..2e30a44
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-attribute-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">attribute-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::attribute-signal</title>
+  
+<synopsis><code mime="text/x-csrc">
+gchar* attribute-signal (gchar* arg1,
+                         gchar* arg2);
+</code></synopsis>
+
+  
+    <p>This signal tests a signal with attributes.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>arg1 :</p></dt>
+<dd><p>a value</p></dd>
+<dt><p>arg2 :</p></dt>
+<dd><p>another value</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
new file mode 100644
index 0000000..8f7a9de
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-doc-empty-arg-parsing"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">doc-empty-arg-parsing</title>
+
+  </info>
+  <title>Regress.AnnotationObject::doc-empty-arg-parsing</title>
+  
+<synopsis><code mime="text/x-csrc">
+void doc-empty-arg-parsing (gpointer arg1);
+</code></synopsis>
+
+  
+    <p>This signal tests an empty document argument (<code>arg1</code>)</p>
+  
+  
+  
+  
+<dl>
+<dt><p>arg1 :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page
new file mode 100644
index 0000000..88dae75
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-function-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">function-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:function-property</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page
new file mode 100644
index 0000000..f4e8868
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-list-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">list-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::list-signal</title>
+  
+<synopsis><code mime="text/x-csrc">
+void list-signal (gpointer list);
+</code></synopsis>
+
+  
+    <p>This is a signal which takes a list of strings, but it's not
+known by GObject as it's only marked as G_TYPE_POINTER</p>
+  
+  
+  
+  
+<dl>
+<dt><p>list :</p></dt>
+<dd><p>a list of strings</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page
new file mode 100644
index 0000000..bedc144
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-string-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">string-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:string-property</title>
+  
+  
+  
+    <p>This is a property which is a string</p>
+  
+  
+    <p>Since 1.0</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page
new file mode 100644
index 0000000..71dbe0c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-string-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">string-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::string-signal</title>
+  
+<synopsis><code mime="text/x-csrc">
+void string-signal (gpointer string);
+</code></synopsis>
+
+  
+    <p>This is a signal which has a broken signal handler,
+it says it's pointer but it's actually a string.</p>
+  
+  
+    <p>Since 1.0</p>
+  
+  
+<dl>
+<dt><p>string :</p></dt>
+<dd><p>a string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page
new file mode 100644
index 0000000..1363f9e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-tab-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">tab-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:tab-property</title>
+  
+  
+  
+    <p>This is a property regress_annotation intentionally indented with a mix
+of tabs and strings to test the tab handling capabilities of the scanner.</p>
+  
+  
+    <p>Since 1.2</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page
new file mode 100644
index 0000000..ea33c69
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.allow_none"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_allow_none</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const gchar*</api:type>
+        <api:name>somearg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_allow_none</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_annotation_object_allow_none (RegressAnnotationObject* object,
+                                               const gchar* somearg);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>somearg :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>NULL</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page
new file mode 100644
index 0000000..27b6b8a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.calleeowns"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_calleeowns</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject**</api:type>
+        <api:name>toown</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_calleeowns</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_calleeowns (RegressAnnotationObject* object,
+                                           GObject** toown);
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments; GObject defaults to transfer</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>toown :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page
new file mode 100644
index 0000000..72e2e62
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.calleesowns"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_calleesowns</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject**</api:type>
+        <api:name>toown1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject**</api:type>
+        <api:name>toown2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_calleesowns</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_calleesowns (RegressAnnotationObject* object,
+                                            GObject** toown1,
+                                            GObject** toown2);
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments, one transferred, other not</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>toown1 :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>toown2 :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page
new file mode 100644
index 0000000..825b449
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_compute_sum</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_compute_sum (RegressAnnotationObject* object,
+                                            int* nums);
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page
new file mode 100644
index 0000000..11333b5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum_n"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum_n</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_compute_sum_n</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_compute_sum_n (RegressAnnotationObject* object,
+                                              int* nums,
+                                              int n_nums);
+</code></synopsis>
+
+  
+    <p>Test taking an array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers that are zero-terminated</p></dd>
+<dt><p>n_nums :</p></dt>
+<dd><p>Length of number array</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page
new file mode 100644
index 0000000..7017be8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum_nz"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum_nz</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_compute_sum_nz</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_compute_sum_nz (RegressAnnotationObject* object,
+                                               int* nums,
+                                               int n_nums);
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers that are zero-terminated</p></dd>
+<dt><p>n_nums :</p></dt>
+<dd><p>Length of number array</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page
new file mode 100644
index 0000000..cde56f8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.create_object"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_create_object</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_create_object</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_annotation_object_create_object (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    <p>Test returning a caller-owned object</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page
new file mode 100644
index 0000000..2c5eaad
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.do_not_use"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_do_not_use</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_do_not_use</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_annotation_object_do_not_use (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>NULL</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page
new file mode 100644
index 0000000..b1aa7aa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.extra_annos"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_extra_annos</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_extra_annos</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_extra_annos (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page
new file mode 100644
index 0000000..ba91139
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.foreach"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_foreach</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressAnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_foreach</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_foreach (RegressAnnotationObject* object,
+                                        RegressAnnotationForeachFunc func,
+                                        gpointer user_data);
+</code></synopsis>
+
+  
+    <p>Test taking a call-scoped callback</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>func :</p></dt>
+<dd><p>Callback to invoke</p></dd>
+<dt><p>user_data :</p></dt>
+<dd><p>Callback user data</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page
new file mode 100644
index 0000000..5a06e84
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_hash"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_hash</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_get_hash</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_annotation_object_get_hash (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    <p>This is a test for returning a hash table mapping strings to
+objects.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>hash table</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page
new file mode 100644
index 0000000..2e36a38
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_objects"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GSList*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_objects</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_get_objects</title>
+  
+<synopsis><code mime="text/x-csrc">
+GSList* regress_annotation_object_get_objects (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    <p>This is a test for returning a list of objects.
+The list itself should be freed, but not the internal objects,
+intentionally similar example to gtk_container_get_children</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>list of objects</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page
new file mode 100644
index 0000000..be29a58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_strings"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GList*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_strings</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_get_strings</title>
+  
+<synopsis><code mime="text/x-csrc">
+GList* regress_annotation_object_get_strings (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    <p>This is a test for returning a list of strings, where
+each string needs to be freed.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>list of strings</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page
new file mode 100644
index 0000000..8218f23
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.hidden_self"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_hidden_self</api:name>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_hidden_self</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_hidden_self (gpointer object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page
new file mode 100644
index 0000000..2795957
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.in"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_in</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>inarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_in (RegressAnnotationObject* object,
+                                   int* inarg);
+</code></synopsis>
+
+  
+    <p>This is a test for in arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page
new file mode 100644
index 0000000..09bc20d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_inout</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_inout (RegressAnnotationObject* object,
+                                      int* inoutarg);
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page
new file mode 100644
index 0000000..4a95ff0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout2"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout2</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_inout2</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_inout2 (RegressAnnotationObject* object,
+                                       int* inoutarg);
+</code></synopsis>
+
+  
+    <p>This is a second test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page
new file mode 100644
index 0000000..1af8170
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout3"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout3</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_inout3</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_inout3 (RegressAnnotationObject* object,
+                                       int* inoutarg);
+</code></synopsis>
+
+  
+    <p>This is a 3th test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page
new file mode 100644
index 0000000..793cf37
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_method</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_method (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page
new file mode 100644
index 0000000..c8ba72c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.notrans"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_notrans</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_notrans</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_annotation_object_notrans (RegressAnnotationObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>An object, not referenced</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page
new file mode 100644
index 0000000..ec90d82
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_out</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>outarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_object_out (RegressAnnotationObject* object,
+                                    int* outarg);
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>outarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page
new file mode 100644
index 0000000..145996e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationObject</title>
+  
+  
+  
+    <p>This is an object used to test regress_annotations.</p>
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.AnnotationObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page
new file mode 100644
index 0000000..5282ab5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.parse_args"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_parse_args</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>argc</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>char***</api:type>
+        <api:name>argv</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_parse_args</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_parse_args (RegressAnnotationObject* object,
+                                           int* argc,
+                                           char*** argv);
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>argc :</p></dt>
+<dd><p>Length of the argument vector</p></dd>
+<dt><p>argv :</p></dt>
+<dd><p>Argument vector</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page
new file mode 100644
index 0000000..a52f0cc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guchar*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_set_data</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_set_data (RegressAnnotationObject* object,
+                                         guchar* data,
+                                         gsize length);
+</code></synopsis>
+
+  
+    <p>Test taking a guchar * with a length.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>Length of the data</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page
new file mode 100644
index 0000000..8c2be28
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data2"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data2</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint8*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_set_data2</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_set_data2 (RegressAnnotationObject* object,
+                                          gint8* data,
+                                          gsize length);
+</code></synopsis>
+
+  
+    <p>Test taking a gchar * with a length.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>Length of the data</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page
new file mode 100644
index 0000000..989bb1d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data3"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data3</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint8*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_set_data3</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_set_data3 (RegressAnnotationObject* object,
+                                          guint8* data,
+                                          gsize length);
+</code></synopsis>
+
+  
+    <p>Test taking a gchar * with a length, overriding the array element
+type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>Length of the data</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page
new file mode 100644
index 0000000..8195d4a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.string_out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_string_out</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>str_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_string_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_annotation_object_string_out (RegressAnnotationObject* object,
+                                               char** str_out);
+</code></synopsis>
+
+  
+    <p>Test returning a string as an out parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>str_out :</p></dt>
+<dd><p>string return value</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>some boolean</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page
new file mode 100644
index 0000000..8a8094b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.use_buffer"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_use_buffer</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guchar*</api:type>
+        <api:name>bytes</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_use_buffer</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_use_buffer (RegressAnnotationObject* object,
+                                           guchar* bytes);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>bytes :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page
new file mode 100644
index 0000000..c669d91
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.watch"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_watch</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressAnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_watch</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_watch (RegressAnnotationObject* object,
+                                      RegressAnnotationForeachFunc func,
+                                      gpointer user_data);
+</code></synopsis>
+
+  
+    <p>This is here just for the sake of being overriden by its
+<link xref="Regress.AnnotationObject.watch_full"/>.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>func :</p></dt>
+<dd><p>The callback</p></dd>
+<dt><p>user_data :</p></dt>
+<dd><p>The callback data</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page
new file mode 100644
index 0000000..90500cc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.watch_full"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_watch_full</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressAnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GDestroyNotify</api:type>
+        <api:name>destroy</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_watch_full</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_watch_full (RegressAnnotationObject* object,
+                                           RegressAnnotationForeachFunc func,
+                                           gpointer user_data,
+                                           GDestroyNotify destroy);
+</code></synopsis>
+
+  
+    <p>Test overriding via the "Rename To" regress_annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>func :</p></dt>
+<dd><p>The callback</p></dd>
+<dt><p>user_data :</p></dt>
+<dd><p>The callback data</p></dd>
+<dt><p>destroy :</p></dt>
+<dd><p>Destroy notification</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page
new file mode 100644
index 0000000..287a0d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.with_voidp"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_with_voidp</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>void*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_object_with_voidp</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_object_with_voidp (RegressAnnotationObject* object,
+                                           void* data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd><p>Opaque pointer handle</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page
new file mode 100644
index 0000000..16e82e3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObjectClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page
new file mode 100644
index 0000000..67f83e9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationStruct"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationStruct</title>
+  
+  
+  
+    <p>This is a test of an array of object in an field of a struct.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.DOUBLE_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.DOUBLE_CONSTANT.page
new file mode 100644
index 0000000..b1aa32d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.DOUBLE_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.DOUBLE_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.DOUBLE_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page b/tests/scanner/Regress-1.0-C-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page
new file mode 100644
index 0000000..357665d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_DEFINE_SHOULD_BE_EXPOSED"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_DEFINE_SHOULD_BE_EXPOSED</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FOO_PIE_IS_TASTY.page b/tests/scanner/Regress-1.0-C-expected/Regress.FOO_PIE_IS_TASTY.page
new file mode 100644
index 0000000..7dc308a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FOO_PIE_IS_TASTY.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_PIE_IS_TASTY"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_PIE_IS_TASTY</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FOO_SUCCESS_INT.page b/tests/scanner/Regress-1.0-C-expected/Regress.FOO_SUCCESS_INT.page
new file mode 100644
index 0000000..f20f426
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FOO_SUCCESS_INT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_SUCCESS_INT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_SUCCESS_INT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page
new file mode 100644
index 0000000..d464625
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooASingle"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooASingle</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page
new file mode 100644
index 0000000..b98ce57
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooAddressType"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooAddressType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page
new file mode 100644
index 0000000..b518be0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect.add"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBRect" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_brect_add</api:name>
+      <api:arg>
+        <api:type>RegressFooBRect*</api:type>
+        <api:name>b1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressFooBRect*</api:type>
+        <api:name>b2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_brect_add</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_brect_add (RegressFooBRect* b1,
+                            RegressFooBRect* b2);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>b1 :</p></dt>
+<dd></dd>
+<dt><p>b2 :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page
new file mode 100644
index 0000000..6b1b283
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBRect" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooBRect*</api:type>
+      </api:returns>
+      <api:name>regress_foo_brect_new</api:name>
+      <api:arg>
+        <api:type>double</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_brect_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooBRect* regress_foo_brect_new (double x,
+                                        double y);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page
new file mode 100644
index 0000000..29268be
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBRect</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page
new file mode 100644
index 0000000..63831e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBUnion"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBUnion</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page
new file mode 100644
index 0000000..565e966
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_boxed_method</api:name>
+      <api:arg>
+        <api:type>RegressFooBoxed*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_boxed_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_boxed_method (RegressFooBoxed* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page
new file mode 100644
index 0000000..bfaaeb8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooBoxed*</api:type>
+      </api:returns>
+      <api:name>regress_foo_boxed_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_boxed_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooBoxed* regress_foo_boxed_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page
new file mode 100644
index 0000000..11fe281
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBoxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page
new file mode 100644
index 0000000..1291cbf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page
@@ -0,0 +1,61 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBuffer"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBuffer</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      <item>
+        <code>Regress.FooBuffer</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page
new file mode 100644
index 0000000..937b679
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBuffer.some_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBuffer" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_buffer_some_method</api:name>
+      <api:arg>
+        <api:type>RegressFooBuffer*</api:type>
+        <api:name>buffer</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_buffer_some_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_buffer_some_method (RegressFooBuffer* buffer);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>buffer :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page
new file mode 100644
index 0000000..241296e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page
new file mode 100644
index 0000000..1324acb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooDBusData.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooDBusData" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_dbus_data_method</api:name>
+      <api:arg>
+        <api:type>RegressFooDBusData*</api:type>
+        <api:name>dbusdata</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_dbus_data_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_dbus_data_method (RegressFooDBusData* dbusdata);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>dbusdata :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page
new file mode 100644
index 0000000..34bb11e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooDBusData"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooDBusData</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page
new file mode 100644
index 0000000..6e9c360
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumFullname"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumFullname</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page
new file mode 100644
index 0000000..bf48cb9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumNoType"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumNoType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page
new file mode 100644
index 0000000..9512104
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumType"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page
new file mode 100644
index 0000000..09ae500
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooError"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page
new file mode 100644
index 0000000..0b77bcb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEvent"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEvent</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page
new file mode 100644
index 0000000..347c651
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEventAny"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEventAny</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page
new file mode 100644
index 0000000..a99a5d1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEventExpose"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEventExpose</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page
new file mode 100644
index 0000000..d4db757
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooFlagsNoType"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooFlagsNoType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page
new file mode 100644
index 0000000..e4f3ede
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooFlagsType"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooFlagsType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page
new file mode 100644
index 0000000..836cfe8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooForeignStruct" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooForeignStruct*</api:type>
+      </api:returns>
+      <api:name>regress_foo_foreign_struct_copy</api:name>
+      <api:arg>
+        <api:type>RegressFooForeignStruct*</api:type>
+        <api:name>original</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_foreign_struct_copy</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooForeignStruct* regress_foo_foreign_struct_copy (RegressFooForeignStruct* original);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>original :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page
new file mode 100644
index 0000000..710c5ef
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooForeignStruct" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooForeignStruct*</api:type>
+      </api:returns>
+      <api:name>regress_foo_foreign_struct_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_foreign_struct_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooForeignStruct* regress_foo_foreign_struct_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page
new file mode 100644
index 0000000..24082f8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooForeignStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page
new file mode 100644
index 0000000..3a16ebc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface-do_regress_foo"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="vfunc"/>
+
+  </info>
+  <title>Regress.FooInterface::do_regress_foo</title>
+  
+<synopsis><code mime="text/x-csrc">
+void do_regress_foo (RegressFooInterface* self,
+                     int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page
new file mode 100644
index 0000000..f655d16
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface.do_regress_foo"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_interface_do_regress_foo</api:name>
+      <api:arg>
+        <api:type>RegressFooInterface*</api:type>
+        <api:name>iface</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_interface_do_regress_foo</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_interface_do_regress_foo (RegressFooInterface* iface,
+                                           int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>iface :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page
new file mode 100644
index 0000000..4682fdd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooInterface</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.FooInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page
new file mode 100644
index 0000000..009383f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_interface_static_method</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_interface_static_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_interface_static_method (int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page
new file mode 100644
index 0000000..5a02e94
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterfaceIface"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooInterfaceIface</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page
new file mode 100644
index 0000000..a0266cd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-hidden"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">hidden</title>
+
+  </info>
+  <title>Regress.FooObject:hidden</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page
new file mode 100644
index 0000000..8efc5f1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-read_fn"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="vfunc"/>
+
+  </info>
+  <title>Regress.FooObject::read_fn</title>
+  
+<synopsis><code mime="text/x-csrc">
+void read_fn (RegressFooObject* object,
+              int offset,
+              int length);
+</code></synopsis>
+
+  
+    <p>Read some stuff.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>offset :</p></dt>
+<dd><p>offset</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>length</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page
new file mode 100644
index 0000000..d745360
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">signal</title>
+
+  </info>
+  <title>Regress.FooObject::signal</title>
+  
+<synopsis><code mime="text/x-csrc">
+gchar* signal (GObject object,
+               gpointer p0);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>p0 :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page
new file mode 100644
index 0000000..4de4c9e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-string"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">string</title>
+
+  </info>
+  <title>Regress.FooObject:string</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page
new file mode 100644
index 0000000..8dc89fd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-virtual_method"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="vfunc"/>
+
+  </info>
+  <title>Regress.FooObject::virtual_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean virtual_method (RegressFooObject* object,
+                         int first_param);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>first_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page
new file mode 100644
index 0000000..2f4e1b5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.a_global_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_a_global_method</api:name>
+      <api:arg>
+        <api:type>UtilityObject*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_a_global_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_a_global_method (UtilityObject* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page
new file mode 100644
index 0000000..fb0c658
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.append_new_stack_layer"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooOtherObject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_append_new_stack_layer</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_append_new_stack_layer</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooOtherObject* regress_foo_object_append_new_stack_layer (RegressFooObject* obj,
+                                                                  int x);
+</code></synopsis>
+
+  
+    <p>This shouldn't be scanned as a constructor.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page
new file mode 100644
index 0000000..3e0a8aa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.dup_name"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_dup_name</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_dup_name</title>
+  
+<synopsis><code mime="text/x-csrc">
+char* regress_foo_object_dup_name (RegressFooObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page
new file mode 100644
index 0000000..3d9138e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.external_type"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>UtilityObject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_external_type</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_external_type</title>
+  
+<synopsis><code mime="text/x-csrc">
+UtilityObject* regress_foo_object_external_type (RegressFooObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>a <link xref="Regress.FooObject"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>NULL</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page
new file mode 100644
index 0000000..201db73
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.get_default"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooObject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_get_default</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_get_default</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooObject* regress_foo_object_get_default (void);
+</code></synopsis>
+
+  
+    <p>This function is intended to match clutter_stage_get_default which
+uses a C sugar return type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The global <link xref="Regress.FooSubobject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page
new file mode 100644
index 0000000..d48725b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.get_name"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>const char*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_get_name</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_get_name</title>
+  
+<synopsis><code mime="text/x-csrc">
+const char* regress_foo_object_get_name (RegressFooObject* object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page
new file mode 100644
index 0000000..19f19fa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.handle_glyph"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_handle_glyph</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>UtilityGlyph</api:type>
+        <api:name>glyph</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_handle_glyph</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_handle_glyph (RegressFooObject* object,
+                                      UtilityGlyph glyph);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>glyph :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page
new file mode 100644
index 0000000..6aa3e82
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.is_it_time_yet"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_is_it_time_yet</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>time_t</api:type>
+        <api:name>time</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_is_it_time_yet</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_is_it_time_yet (RegressFooObject* object,
+                                        time_t time);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>time :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page
new file mode 100644
index 0000000..b1d8ccb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooObject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooObject* regress_foo_object_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page
new file mode 100644
index 0000000..7ab6a24
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new_as_super"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new_as_super</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_new_as_super</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_foo_object_new_as_super (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page
new file mode 100644
index 0000000..5d4766a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new_cookie"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooObjectCookie</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new_cookie</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>target</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_new_cookie</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooObjectCookie regress_foo_object_new_cookie (RegressFooObject* object,
+                                                      const char* target);
+</code></synopsis>
+
+  
+    <p>Not sure why this test is here...</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>target :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page
new file mode 100644
index 0000000..c79e0b7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page
new file mode 100644
index 0000000..cff7711
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.read"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_read</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>offset</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_read</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_read (RegressFooObject* object,
+                              int offset,
+                              int length);
+</code></synopsis>
+
+  
+    <p>Read some stuff.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>obj</p></dd>
+<dt><p>offset :</p></dt>
+<dd><p>offset</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>length</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page
new file mode 100644
index 0000000..f82a16b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.skipped_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_skipped_method</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_skipped_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_skipped_method (RegressFooObject* object);
+</code></synopsis>
+
+  
+    <p>This is only useful from C.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>obj</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page
new file mode 100644
index 0000000..13e2427
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.static_meth"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_static_meth</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_static_meth</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_foo_object_static_meth (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
new file mode 100644
index 0000000..3d842cf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.take_all"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_take_all</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:varargs/>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_take_all</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_take_all (RegressFooObject* object,
+                                  int x,
+                                  ...);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>None :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page
new file mode 100644
index 0000000..82d3c18
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.various"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_various</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>void*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GType</api:type>
+        <api:name>some_type</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_various</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_object_various (RegressFooObject* object,
+                                 void* data,
+                                 GType some_type);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>some_type :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page
new file mode 100644
index 0000000..29a2c8c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.virtual_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_virtual_method</api:name>
+      <api:arg>
+        <api:type>RegressFooObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>first_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_object_virtual_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_foo_object_virtual_method (RegressFooObject* object,
+                                            int first_param);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>first_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page
new file mode 100644
index 0000000..c35a3bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObjectClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page
new file mode 100644
index 0000000..4d9cabc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObjectCookie"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObjectCookie</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page
new file mode 100644
index 0000000..0d080df
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.FooOtherObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooOtherObject</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooOtherObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page
new file mode 100644
index 0000000..483e04f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle.add"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooRectangle" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_rectangle_add</api:name>
+      <api:arg>
+        <api:type>RegressFooRectangle*</api:type>
+        <api:name>r1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const RegressFooRectangle*</api:type>
+        <api:name>r2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_rectangle_add</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_rectangle_add (RegressFooRectangle* r1,
+                                const RegressFooRectangle* r2);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>r1 :</p></dt>
+<dd><p>add to this rect</p></dd>
+<dt><p>r2 :</p></dt>
+<dd><p>source rectangle</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page
new file mode 100644
index 0000000..43d831e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page
@@ -0,0 +1,66 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle.new"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooRectangle" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooRectangle*</api:type>
+      </api:returns>
+      <api:name>regress_foo_rectangle_new</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>width</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>height</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_rectangle_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooRectangle* regress_foo_rectangle_new (int x,
+                                                int y,
+                                                int width,
+                                                int height);
+</code></synopsis>
+
+  
+    <p>This is a C convenience constructor; we have to (skip)
+it because it's not a boxed type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>width :</p></dt>
+<dd></dd>
+<dt><p>height :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page
new file mode 100644
index 0000000..3ea38d1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooRectangle</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page
new file mode 100644
index 0000000..3746d32
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSkippable"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSkippable</title>
+  
+  
+  
+    <p>Some type that is only interesting from C and should not be
+exposed to language bindings.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page
new file mode 100644
index 0000000..049d376
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooStackLayer"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooStackLayer</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page
new file mode 100644
index 0000000..291133a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooStruct"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page
new file mode 100644
index 0000000..131747d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-destroy-event"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="property"/>
+    <title type="link" role="topic">destroy-event</title>
+
+  </info>
+  <title>Regress.FooSubInterface::destroy-event</title>
+  
+<synopsis><code mime="text/x-csrc">
+void destroy-event (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page
new file mode 100644
index 0000000..2995ee8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-destroy_event"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="vfunc"/>
+
+  </info>
+  <title>Regress.FooSubInterface::destroy_event</title>
+  
+<synopsis><code mime="text/x-csrc">
+void destroy_event (RegressFooSubInterface* self);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page
new file mode 100644
index 0000000..aa72dd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-do_bar"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="vfunc"/>
+
+  </info>
+  <title>Regress.FooSubInterface::do_bar</title>
+  
+<synopsis><code mime="text/x-csrc">
+void do_bar (RegressFooSubInterface* self);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page
new file mode 100644
index 0000000..777e47b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-do_baz"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="vfunc"/>
+
+  </info>
+  <title>Regress.FooSubInterface::do_baz</title>
+  
+<synopsis><code mime="text/x-csrc">
+void do_baz (RegressFooSubInterface* self,
+             GCallback callback,
+             gpointer user_data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page
new file mode 100644
index 0000000..f5d7541
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface.do_bar"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_sub_interface_do_bar</api:name>
+      <api:arg>
+        <api:type>RegressFooSubInterface*</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_sub_interface_do_bar</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_sub_interface_do_bar (RegressFooSubInterface* self);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page
new file mode 100644
index 0000000..d3fbac4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface.do_baz"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_sub_interface_do_baz</api:name>
+      <api:arg>
+        <api:type>RegressFooSubInterface*</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_sub_interface_do_baz</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_sub_interface_do_baz (RegressFooSubInterface* self,
+                                       GCallback callback,
+                                       gpointer user_data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page
new file mode 100644
index 0000000..4147580
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.FooSubInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page
new file mode 100644
index 0000000..fc18c91
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterfaceIface"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterfaceIface</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page
new file mode 100644
index 0000000..8636405
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubobject.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubobject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooSubobject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_subobject_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_subobject_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooSubobject* regress_foo_subobject_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page
new file mode 100644
index 0000000..933b39a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page
@@ -0,0 +1,61 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubobject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubobject</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      <item>
+        <code>Regress.FooSubobject</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page
new file mode 100644
index 0000000..d0e3e88
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubobjectClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubobjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page
new file mode 100644
index 0000000..facdc1c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooThingWithArray"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooThingWithArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page
new file mode 100644
index 0000000..06d2e80
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooUnion"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooUnion</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page
new file mode 100644
index 0000000..e6943a0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooUtilityStruct"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooUtilityStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page
new file mode 100644
index 0000000..d477638
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooVarargsCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooVarargsCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page b/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page
new file mode 100644
index 0000000..1812249
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooXEvent"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooXEvent</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.GUINT64_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.GUINT64_CONSTANT.page
new file mode 100644
index 0000000..9a0cd16
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.GUINT64_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.GUINT64_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.GUINT64_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.GUINT64_CONSTANTA.page b/tests/scanner/Regress-1.0-C-expected/Regress.GUINT64_CONSTANTA.page
new file mode 100644
index 0000000..4faf765
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.GUINT64_CONSTANTA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.GUINT64_CONSTANTA"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.GUINT64_CONSTANTA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.G_GINT64_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.G_GINT64_CONSTANT.page
new file mode 100644
index 0000000..b4a66f6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.G_GINT64_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.G_GINT64_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.G_GINT64_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.INT_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.INT_CONSTANT.page
new file mode 100644
index 0000000..e4df9a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.INT_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.INT_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.INT_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page b/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page
new file mode 100644
index 0000000..e285bc2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.IntSet"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.IntSet</title>
+  
+  
+  
+    <p>Compatibility typedef, like telepathy-glib's TpIntSet</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.LONG_STRING_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.LONG_STRING_CONSTANT.page
new file mode 100644
index 0000000..3c0409a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.LONG_STRING_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.LONG_STRING_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.LONG_STRING_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page b/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page
new file mode 100644
index 0000000..f2e64f0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.LikeGnomeKeyringPasswordSchema"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.LikeGnomeKeyringPasswordSchema</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.MAXUINT64.page b/tests/scanner/Regress-1.0-C-expected/Regress.MAXUINT64.page
new file mode 100644
index 0000000..be1afd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.MAXUINT64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.MAXUINT64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.MAXUINT64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.MININT64.page b/tests/scanner/Regress-1.0-C-expected/Regress.MININT64.page
new file mode 100644
index 0000000..35c3e58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.MININT64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.MININT64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.MININT64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.Mixed_Case_Constant.page b/tests/scanner/Regress-1.0-C-expected/Regress.Mixed_Case_Constant.page
new file mode 100644
index 0000000..5ea8d9b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.Mixed_Case_Constant.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.Mixed_Case_Constant"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.Mixed_Case_Constant</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.NEGATIVE_INT_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.NEGATIVE_INT_CONSTANT.page
new file mode 100644
index 0000000..576c690
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.NEGATIVE_INT_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.NEGATIVE_INT_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.NEGATIVE_INT_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page b/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page
new file mode 100644
index 0000000..9af00b5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.PtrArrayAlias"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.PtrArrayAlias</title>
+  
+  
+  
+    <p>Typedef'd GPtrArray for some reason</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.STRING_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.STRING_CONSTANT.page
new file mode 100644
index 0000000..945ba98
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.STRING_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.STRING_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.STRING_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page b/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page
new file mode 100644
index 0000000..2c6993d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.SkippedStructure"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.SkippedStructure</title>
+  
+  
+  
+    <p>This should be skipped, and moreover, all function which
+use it should be.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page
new file mode 100644
index 0000000..2848aa3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestABCError"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestABCError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page
new file mode 100644
index 0000000..5bd06bb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxed*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_copy</api:name>
+      <api:arg>
+        <api:type>RegressTestBoxed*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_copy</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxed* regress_test_boxed_copy (RegressTestBoxed* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page
new file mode 100644
index 0000000..073b44b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.equals"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_equals</api:name>
+      <api:arg>
+        <api:type>RegressTestBoxed*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestBoxed*</api:type>
+        <api:name>other</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_equals</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_boxed_equals (RegressTestBoxed* boxed,
+                                    RegressTestBoxed* other);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>other :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page
new file mode 100644
index 0000000..ce4f17b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxed*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxed* regress_test_boxed_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page
new file mode 100644
index 0000000..7d4292a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new_alternative_constructor1"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxed*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new_alternative_constructor1</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_new_alternative_constructor1</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxed* regress_test_boxed_new_alternative_constructor1 (int i);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page
new file mode 100644
index 0000000..5ec33cc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new_alternative_constructor2"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxed*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new_alternative_constructor2</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>j</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_new_alternative_constructor2</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxed* regress_test_boxed_new_alternative_constructor2 (int i,
+                                                                   int j);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>j :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page
new file mode 100644
index 0000000..56b516e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new_alternative_constructor3"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxed*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new_alternative_constructor3</api:name>
+      <api:arg>
+        <api:type>char*</api:type>
+        <api:name>s</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_new_alternative_constructor3</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxed* regress_test_boxed_new_alternative_constructor3 (char* s);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>s :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page
new file mode 100644
index 0000000..090ce47
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page
new file mode 100644
index 0000000..9965112
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxedB*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_b_copy</api:name>
+      <api:arg>
+        <api:type>RegressTestBoxedB*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_b_copy</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxedB* regress_test_boxed_b_copy (RegressTestBoxedB* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page
new file mode 100644
index 0000000..5266692
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedB" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxedB*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_b_new</api:name>
+      <api:arg>
+        <api:type>gint8</api:type>
+        <api:name>some_int8</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>glong</api:type>
+        <api:name>some_long</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_b_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxedB* regress_test_boxed_b_new (gint8 some_int8,
+                                             glong some_long);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>some_int8 :</p></dt>
+<dd></dd>
+<dt><p>some_long :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page
new file mode 100644
index 0000000..99160c6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page
new file mode 100644
index 0000000..52ed348
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedC.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedC" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxedC*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_c_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_c_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxedC* regress_test_boxed_c_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page
new file mode 100644
index 0000000..9a86486
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedC"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedC</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page
new file mode 100644
index 0000000..fd21b48
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxedD*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_copy</api:name>
+      <api:arg>
+        <api:type>RegressTestBoxedD*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_d_copy</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxedD* regress_test_boxed_d_copy (RegressTestBoxedD* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page
new file mode 100644
index 0000000..c98b5f7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.free"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_free</api:name>
+      <api:arg>
+        <api:type>RegressTestBoxedD*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_d_free</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_boxed_d_free (RegressTestBoxedD* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page
new file mode 100644
index 0000000..240ad4f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.get_magic"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_get_magic</api:name>
+      <api:arg>
+        <api:type>RegressTestBoxedD*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_d_get_magic</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_boxed_d_get_magic (RegressTestBoxedD* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page
new file mode 100644
index 0000000..26ec2bb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestBoxedD*</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_new</api:name>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>a_string</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a_int</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boxed_d_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestBoxedD* regress_test_boxed_d_new (const char* a_string,
+                                             int a_int);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>a_string :</p></dt>
+<dd></dd>
+<dt><p>a_int :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page
new file mode 100644
index 0000000..8478165
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedD</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page
new file mode 100644
index 0000000..9a219e9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page
new file mode 100644
index 0000000..7ceb2e0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackArray"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page
new file mode 100644
index 0000000..3de1fbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackFull"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackFull</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page
new file mode 100644
index 0000000..1f6f2bd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackGError"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackGError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page
new file mode 100644
index 0000000..906947c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackHashtable"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackHashtable</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page
new file mode 100644
index 0000000..e7397a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackOwnedGError"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackOwnedGError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page
new file mode 100644
index 0000000..f3047cf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackUserData"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackUserData</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page
new file mode 100644
index 0000000..aa59b41
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestDEFError"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestDEFError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page
new file mode 100644
index 0000000..b48602f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnum"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnum</title>
+  
+  
+  
+    <p>By purpose, not all members have documentation</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page
new file mode 100644
index 0000000..575270d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnumNoGEnum"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnumNoGEnum</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page
new file mode 100644
index 0000000..2029669
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnumUnsigned"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnumUnsigned</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page
new file mode 100644
index 0000000..6be3dac
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestError"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page
new file mode 100644
index 0000000..d545197
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFlags"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFlags</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page
new file mode 100644
index 0000000..14316be
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFloating.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFloating" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestFloating*</api:type>
+      </api:returns>
+      <api:name>regress_test_floating_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_floating_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestFloating* regress_test_floating_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>A new floating <link xref="Regress.TestFloating"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page
new file mode 100644
index 0000000..f1d98e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page
@@ -0,0 +1,61 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFloating"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFloating</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>GObject.InitiallyUnowned</code>
+      <item>
+        <code>Regress.TestFloating</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page
new file mode 100644
index 0000000..143325f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFloatingClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFloatingClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page
new file mode 100644
index 0000000..964f691
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObject</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestFundamentalObject</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page
new file mode 100644
index 0000000..c4b6afa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject.ref"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestFundamentalObject*</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_object_ref</api:name>
+      <api:arg>
+        <api:type>RegressTestFundamentalObject*</api:type>
+        <api:name>fundamental_object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_fundamental_object_ref</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestFundamentalObject* regress_test_fundamental_object_ref (RegressTestFundamentalObject* fundamental_object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>fundamental_object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>A new <link xref="Regress.TestFundamentalObject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page
new file mode 100644
index 0000000..776c6f6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject.unref"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_object_unref</api:name>
+      <api:arg>
+        <api:type>RegressTestFundamentalObject*</api:type>
+        <api:name>fundamental_object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_fundamental_object_unref</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_fundamental_object_unref (RegressTestFundamentalObject* fundamental_object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>fundamental_object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page
new file mode 100644
index 0000000..daedb67
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page
new file mode 100644
index 0000000..dfd65ce
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectCopyFunction"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectCopyFunction</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page
new file mode 100644
index 0000000..2b9d965
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectFinalizeFunction"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectFinalizeFunction</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page
new file mode 100644
index 0000000..26af86a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalSubObject.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalSubObject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestFundamentalSubObject*</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_sub_object_new</api:name>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_fundamental_sub_object_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestFundamentalSubObject* regress_test_fundamental_sub_object_new (const char* data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page
new file mode 100644
index 0000000..c8c1f03
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalSubObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalSubObject</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestFundamentalObject</code>
+      <item>
+        <code>Regress.TestFundamentalSubObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page
new file mode 100644
index 0000000..77dd6bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalSubObjectClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalSubObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page
new file mode 100644
index 0000000..35caeed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.do_foo"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_do_foo</api:name>
+      <api:arg>
+        <api:type>RegressTestInheritDrawable*</api:type>
+        <api:name>drawable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_inherit_drawable_do_foo</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_inherit_drawable_do_foo (RegressTestInheritDrawable* drawable,
+                                           int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>drawable :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
new file mode 100644
index 0000000..cdd2732
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.do_foo_maybe_throw"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_do_foo_maybe_throw</api:name>
+      <api:arg>
+        <api:type>RegressTestInheritDrawable*</api:type>
+        <api:name>drawable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_inherit_drawable_do_foo_maybe_throw</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_inherit_drawable_do_foo_maybe_throw (RegressTestInheritDrawable* drawable,
+                                                       int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>drawable :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page
new file mode 100644
index 0000000..11f3600
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.get_origin"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_get_origin</api:name>
+      <api:arg>
+        <api:type>RegressTestInheritDrawable*</api:type>
+        <api:name>drawable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_inherit_drawable_get_origin</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_inherit_drawable_get_origin (RegressTestInheritDrawable* drawable,
+                                               int* x,
+                                               int* y);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>drawable :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page
new file mode 100644
index 0000000..c3061a9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.get_size"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_get_size</api:name>
+      <api:arg>
+        <api:type>RegressTestInheritDrawable*</api:type>
+        <api:name>drawable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint*</api:type>
+        <api:name>width</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint*</api:type>
+        <api:name>height</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_inherit_drawable_get_size</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_inherit_drawable_get_size (RegressTestInheritDrawable* drawable,
+                                             guint* width,
+                                             guint* height);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>drawable :</p></dt>
+<dd></dd>
+<dt><p>width :</p></dt>
+<dd></dd>
+<dt><p>height :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page
new file mode 100644
index 0000000..9d50d65
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritDrawable</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestInheritDrawable</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page
new file mode 100644
index 0000000..059c991
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawableClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritDrawableClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page
new file mode 100644
index 0000000..06e5eed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritPixmapObjectClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritPixmapObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page
new file mode 100644
index 0000000..1f823a2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInterface</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page
new file mode 100644
index 0000000..536f049
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInterfaceIface"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInterfaceIface</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page
new file mode 100644
index 0000000..01b4560
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-all"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">all</title>
+
+  </info>
+  <title>Regress.TestObj::all</title>
+  
+<synopsis><code mime="text/x-csrc">
+void all (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page
new file mode 100644
index 0000000..ad9d6c8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-allow_none_vfunc"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="vfunc"/>
+
+  </info>
+  <title>Regress.TestObj::allow_none_vfunc</title>
+  
+<synopsis><code mime="text/x-csrc">
+void allow_none_vfunc (RegressTestObj* obj,
+                       RegressTestObj* two);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>two :</p></dt>
+<dd><p>Another object</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page
new file mode 100644
index 0000000..103b5bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-bare"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">bare</title>
+
+  </info>
+  <title>Regress.TestObj:bare</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page
new file mode 100644
index 0000000..c632b21
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-boxed"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">boxed</title>
+
+  </info>
+  <title>Regress.TestObj:boxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page
new file mode 100644
index 0000000..ecb33c4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-cleanup"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">cleanup</title>
+
+  </info>
+  <title>Regress.TestObj::cleanup</title>
+  
+<synopsis><code mime="text/x-csrc">
+void cleanup (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page
new file mode 100644
index 0000000..a80b804
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-double"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">double</title>
+
+  </info>
+  <title>Regress.TestObj:double</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page
new file mode 100644
index 0000000..ccdfb64
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-first"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">first</title>
+
+  </info>
+  <title>Regress.TestObj::first</title>
+  
+<synopsis><code mime="text/x-csrc">
+void first (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page
new file mode 100644
index 0000000..569b3e8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-float"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">float</title>
+
+  </info>
+  <title>Regress.TestObj:float</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page
new file mode 100644
index 0000000..3956ea6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-gtype"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">gtype</title>
+
+  </info>
+  <title>Regress.TestObj:gtype</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page
new file mode 100644
index 0000000..7012f4e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-hash-table-old"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">hash-table-old</title>
+
+  </info>
+  <title>Regress.TestObj:hash-table-old</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page
new file mode 100644
index 0000000..4a3be63
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-hash-table"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">hash-table</title>
+
+  </info>
+  <title>Regress.TestObj:hash-table</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page
new file mode 100644
index 0000000..fdca28f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-int"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">int</title>
+
+  </info>
+  <title>Regress.TestObj:int</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page
new file mode 100644
index 0000000..38b1f7e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-list-old"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">list-old</title>
+
+  </info>
+  <title>Regress.TestObj:list-old</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page
new file mode 100644
index 0000000..17aa89b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-list"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">list</title>
+
+  </info>
+  <title>Regress.TestObj:list</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page
new file mode 100644
index 0000000..b17c04d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-matrix"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="vfunc"/>
+
+  </info>
+  <title>Regress.TestObj::matrix</title>
+  
+<synopsis><code mime="text/x-csrc">
+int matrix (RegressTestObj* obj,
+            const char* somestr);
+</code></synopsis>
+
+  
+    <p>This method is virtual.  Notably its name differs from the virtual
+slot name, which makes it useful for testing bindings handle this
+case.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>somestr :</p></dt>
+<dd><p>Meaningless string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page
new file mode 100644
index 0000000..a9356cb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-array-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-array-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-array-prop</title>
+  
+<synopsis><code mime="text/x-csrc">
+void sig-with-array-prop (guint* arr);
+</code></synopsis>
+
+  
+    <p>This test signal is like TelepathyGlib's
+ TpChannel:: group-members-changed-detailed:</p>
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd><p>numbers</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page
new file mode 100644
index 0000000..afe8466
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-foreign-struct"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-foreign-struct</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-foreign-struct</title>
+  
+<synopsis><code mime="text/x-csrc">
+void sig-with-foreign-struct (cairo_t cr);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>cr :</p></dt>
+<dd><p>A cairo context.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page
new file mode 100644
index 0000000..2c7e3f9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-hash-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-hash-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-hash-prop</title>
+  
+<synopsis><code mime="text/x-csrc">
+void sig-with-hash-prop (&lt;map&gt; hash);
+</code></synopsis>
+
+  
+    <p>This test signal is like TelepathyGlib's
+ TpAccount::status-changed</p>
+  
+  
+  
+  
+<dl>
+<dt><p>hash :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page
new file mode 100644
index 0000000..6a771a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-int64-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-int64-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-int64-prop</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint64 sig-with-int64-prop (gint64 i);
+</code></synopsis>
+
+  
+    <p>You can use this with regress_test_obj_emit_sig_with_int64, or raise from
+the introspection client langage.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page
new file mode 100644
index 0000000..135d052
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-intarray-ret"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-intarray-ret</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-intarray-ret</title>
+  
+<synopsis><code mime="text/x-csrc">
+None sig-with-intarray-ret (gint i);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page
new file mode 100644
index 0000000..5aee822
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-obj"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-obj</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-obj</title>
+  
+<synopsis><code mime="text/x-csrc">
+void sig-with-obj (GObject obj);
+</code></synopsis>
+
+  
+    <p>Test transfer none GObject as a param (tests refcounting).
+Use with regress_test_obj_emit_sig_with_obj</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A newly created RegressTestObj</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page
new file mode 100644
index 0000000..c5fd2dd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-strv"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-strv</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-strv</title>
+  
+<synopsis><code mime="text/x-csrc">
+void sig-with-strv (utf8* strs);
+</code></synopsis>
+
+  
+    <p>Test GStrv as a param.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>strs :</p></dt>
+<dd><p>strings</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page
new file mode 100644
index 0000000..25d6d5e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-uint64-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">sig-with-uint64-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-uint64-prop</title>
+  
+<synopsis><code mime="text/x-csrc">
+guint64 sig-with-uint64-prop (guint64 i);
+</code></synopsis>
+
+  
+    <p>You can use this with regress_test_obj_emit_sig_with_uint64, or raise from
+the introspection client langage.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page
new file mode 100644
index 0000000..561f2da
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-string"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">string</title>
+
+  </info>
+  <title>Regress.TestObj:string</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page
new file mode 100644
index 0000000..f0df5f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-test-with-static-scope-arg"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">test-with-static-scope-arg</title>
+
+  </info>
+  <title>Regress.TestObj::test-with-static-scope-arg</title>
+  
+<synopsis><code mime="text/x-csrc">
+void test-with-static-scope-arg (RegressTestSimpleBoxedA object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page
new file mode 100644
index 0000000..2932141
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-test"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">test</title>
+
+  </info>
+  <title>Regress.TestObj::test</title>
+  
+<synopsis><code mime="text/x-csrc">
+void test (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page
new file mode 100644
index 0000000..5cdc38d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.constructor"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestObj*</api:type>
+      </api:returns>
+      <api:name>regress_constructor</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_constructor</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestObj* regress_constructor (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page
new file mode 100644
index 0000000..b54d35a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.do_matrix"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_do_matrix</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>somestr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_do_matrix</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_obj_do_matrix (RegressTestObj* obj,
+                                const char* somestr);
+</code></synopsis>
+
+  
+    <p>This method is virtual.  Notably its name differs from the virtual
+slot name, which makes it useful for testing bindings handle this
+case.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>somestr :</p></dt>
+<dd><p>Meaningless string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
new file mode 100644
index 0000000..677f1fc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_foreign_struct"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_foreign_struct</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_emit_sig_with_foreign_struct</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_emit_sig_with_foreign_struct (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page
new file mode 100644
index 0000000..2dc8a1b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_int64"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_int64</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_emit_sig_with_int64</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_emit_sig_with_int64 (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page
new file mode 100644
index 0000000..9d598f9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_obj"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_obj</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_emit_sig_with_obj</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_emit_sig_with_obj (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page
new file mode 100644
index 0000000..a3a89c1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_uint64"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_uint64</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_emit_sig_with_uint64</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_emit_sig_with_uint64 (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page
new file mode 100644
index 0000000..28fc691
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.forced_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_forced_method</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_forced_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_forced_method (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page
new file mode 100644
index 0000000..2121ada
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.instance_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_instance_method</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_instance_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_obj_instance_method (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page
new file mode 100644
index 0000000..7ea1766
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.instance_method_callback"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_instance_method_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_instance_method_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_instance_method_callback (RegressTestObj* obj,
+                                                RegressTestCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page
new file mode 100644
index 0000000..1f5ca6d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestObj*</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_new</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestObj* regress_test_obj_new (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page
new file mode 100644
index 0000000..44f469d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.new_callback"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestObj*</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_new_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GDestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_new_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestObj* regress_test_obj_new_callback (RegressTestCallbackUserData callback,
+                                               gpointer user_data,
+                                               GDestroyNotify notify);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page
new file mode 100644
index 0000000..49f9c1f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.new_from_file"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestObj*</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_new_from_file</api:name>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_new_from_file</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestObj* regress_test_obj_new_from_file (const char* x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page
new file mode 100644
index 0000000..bd78434
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_null_out</api:name>
+      <api:arg>
+        <api:type>RegressTestObj**</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_null_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_null_out (RegressTestObj** obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page
new file mode 100644
index 0000000..fc54d98
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestObj</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page
new file mode 100644
index 0000000..f1e9a13
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.set_bare"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_set_bare</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject*</api:type>
+        <api:name>bare</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_set_bare</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_set_bare (RegressTestObj* obj,
+                                GObject* bare);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>bare :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page
new file mode 100644
index 0000000..f46ec16
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_inout_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_inout_param</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gdouble</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_skip_inout_param</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_obj_skip_inout_param (RegressTestObj* obj,
+                                            gint a,
+                                            gint* out_b,
+                                            gdouble c,
+                                            gint* inout_d,
+                                            gint* out_sum,
+                                            gint num1,
+                                            gint num2);
+</code></synopsis>
+
+  
+    <p>Check that the out value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/>.</p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>TRUE</code> if the call succeeds, <code>FALSE</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page
new file mode 100644
index 0000000..77e1de3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_out_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_out_param</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gdouble</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_skip_out_param</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_obj_skip_out_param (RegressTestObj* obj,
+                                          gint a,
+                                          gint* out_b,
+                                          gdouble c,
+                                          gint* inout_d,
+                                          gint* out_sum,
+                                          gint num1,
+                                          gint num2);
+</code></synopsis>
+
+  
+    <p>Check that the out value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/>.</p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>TRUE</code> if the call succeeds, <code>FALSE</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page
new file mode 100644
index 0000000..ef5893c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_param</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gdouble</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_skip_param</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_obj_skip_param (RegressTestObj* obj,
+                                      gint a,
+                                      gint* out_b,
+                                      gdouble c,
+                                      gint* inout_d,
+                                      gint* out_sum,
+                                      gint num1,
+                                      gint num2);
+</code></synopsis>
+
+  
+    <p>Check that a parameter is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/>.</p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>TRUE</code> if the call succeeds, <code>FALSE</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page
new file mode 100644
index 0000000..a463fe7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_return_val"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_return_val</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gdouble</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint*</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_skip_return_val</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_obj_skip_return_val (RegressTestObj* obj,
+                                           gint a,
+                                           gint* out_b,
+                                           gdouble c,
+                                           gint* inout_d,
+                                           gint* out_sum,
+                                           gint num1,
+                                           gint num2);
+</code></synopsis>
+
+  
+    <p>Check that the return value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>a <link xref="Regress.TestObj"/></p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>A return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>TRUE</code> if the call succeeds, <code>FALSE</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page
new file mode 100644
index 0000000..5ebe0f1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_return_val_no_out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_return_val_no_out</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_skip_return_val_no_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_obj_skip_return_val_no_out (RegressTestObj* obj,
+                                                  gint a);
+</code></synopsis>
+
+  
+    <p>Check that the return value is skipped. Succeed if a is nonzero, otherwise
+raise an error.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>a <link xref="Regress.TestObj"/></p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>TRUE</code> if the call succeeds, <code>FALSE</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page
new file mode 100644
index 0000000..c27d88b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>double</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_static_method</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_static_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+double regress_test_obj_static_method (int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page
new file mode 100644
index 0000000..74583ad
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.static_method_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_static_method_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_static_method_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_static_method_callback (RegressTestCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page
new file mode 100644
index 0000000..2ace5e1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page
@@ -0,0 +1,86 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.torture_signature_0"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_torture_signature_0</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double*</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_torture_signature_0</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_obj_torture_signature_0 (RegressTestObj* obj,
+                                           int x,
+                                           double* y,
+                                           int* z,
+                                           const char* foo,
+                                           int* q,
+                                           guint m);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page
new file mode 100644
index 0000000..aa31fb3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page
@@ -0,0 +1,86 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.torture_signature_1"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_torture_signature_1</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double*</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_obj_torture_signature_1</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_obj_torture_signature_1 (RegressTestObj* obj,
+                                               int x,
+                                               double* y,
+                                               int* z,
+                                               const char* foo,
+                                               int* q,
+                                               guint m);
+</code></synopsis>
+
+  
+    <p>This function throws an error if m is odd.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page
new file mode 100644
index 0000000..93e56e8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObjClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObjClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page
new file mode 100644
index 0000000..1180b98
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestOtherError"
+      type="guide"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestOtherError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page
new file mode 100644
index 0000000..788441a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestPrivateEnum"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestPrivateEnum</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page
new file mode 100644
index 0000000..8ce8712
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestPrivateStruct"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestPrivateStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page
new file mode 100644
index 0000000..39a3877
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.const_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const RegressTestSimpleBoxedA*</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_const_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_simple_boxed_a_const_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const RegressTestSimpleBoxedA* regress_test_simple_boxed_a_const_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page
new file mode 100644
index 0000000..827e39f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestSimpleBoxedA*</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_copy</api:name>
+      <api:arg>
+        <api:type>RegressTestSimpleBoxedA*</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_simple_boxed_a_copy</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestSimpleBoxedA* regress_test_simple_boxed_a_copy (RegressTestSimpleBoxedA* a);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page
new file mode 100644
index 0000000..4108bf9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.equals"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_equals</api:name>
+      <api:arg>
+        <api:type>RegressTestSimpleBoxedA*</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestSimpleBoxedA*</api:type>
+        <api:name>other_a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_simple_boxed_a_equals</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_simple_boxed_a_equals (RegressTestSimpleBoxedA* a,
+                                             RegressTestSimpleBoxedA* other_a);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd></dd>
+<dt><p>other_a :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page
new file mode 100644
index 0000000..36459d3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleBoxedA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page
new file mode 100644
index 0000000..0846cbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedB.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestSimpleBoxedB*</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_b_copy</api:name>
+      <api:arg>
+        <api:type>RegressTestSimpleBoxedB*</api:type>
+        <api:name>b</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_simple_boxed_b_copy</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestSimpleBoxedB* regress_test_simple_boxed_b_copy (RegressTestSimpleBoxedB* b);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>b :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page
new file mode 100644
index 0000000..e3c9fcb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedB"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleBoxedB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page
new file mode 100644
index 0000000..61bafb5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page
new file mode 100644
index 0000000..61f9430
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA.clone"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_a_clone</api:name>
+      <api:arg>
+        <api:type>RegressTestStructA*</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestStructA*</api:type>
+        <api:name>a_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_struct_a_clone</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_struct_a_clone (RegressTestStructA* a,
+                                  RegressTestStructA* a_out);
+</code></synopsis>
+
+  
+    <p>Make a copy of a RegressTestStructA</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>the structure</p></dd>
+<dt><p>a_out :</p></dt>
+<dd><p>the cloned structure</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page
new file mode 100644
index 0000000..0093ac8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page
new file mode 100644
index 0000000..ef54d11
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA.parse"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructA" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_a_parse</api:name>
+      <api:arg>
+        <api:type>RegressTestStructA*</api:type>
+        <api:name>a_out</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const gchar*</api:type>
+        <api:name>string</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_struct_a_parse</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_struct_a_parse (RegressTestStructA* a_out,
+                                  const gchar* string);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>a_out :</p></dt>
+<dd><p>the structure that is to be filled</p></dd>
+<dt><p>string :</p></dt>
+<dd><p>ignored</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page
new file mode 100644
index 0000000..4adde2a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructB.clone"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_b_clone</api:name>
+      <api:arg>
+        <api:type>RegressTestStructB*</api:type>
+        <api:name>b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestStructB*</api:type>
+        <api:name>b_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_struct_b_clone</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_struct_b_clone (RegressTestStructB* b,
+                                  RegressTestStructB* b_out);
+</code></synopsis>
+
+  
+    <p>Make a copy of a RegressTestStructB</p>
+  
+  
+  
+  
+<dl>
+<dt><p>b :</p></dt>
+<dd><p>the structure</p></dd>
+<dt><p>b_out :</p></dt>
+<dd><p>the cloned structure</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page
new file mode 100644
index 0000000..55d74f5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructB"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page
new file mode 100644
index 0000000..08e850e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructC"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructC</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page
new file mode 100644
index 0000000..37c7b2a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructD"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructD</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page
new file mode 100644
index 0000000..b3688e0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructE"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructE</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page
new file mode 100644
index 0000000..6f77035
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructE__some_union__union"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructE__some_union__union</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page
new file mode 100644
index 0000000..d75ea66
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructF"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructF</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page
new file mode 100644
index 0000000..e3fb773
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructFixedArray.frob"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructFixedArray" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_fixed_array_frob</api:name>
+      <api:arg>
+        <api:type>RegressTestStructFixedArray*</api:type>
+        <api:name>str</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_struct_fixed_array_frob</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_struct_fixed_array_frob (RegressTestStructFixedArray* str);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>str :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page
new file mode 100644
index 0000000..a18443c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructFixedArray"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructFixedArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page
new file mode 100644
index 0000000..d32c0de
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.instance_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_instance_method</api:name>
+      <api:arg>
+        <api:type>RegressTestSubObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_sub_obj_instance_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_sub_obj_instance_method (RegressTestSubObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page
new file mode 100644
index 0000000..f8ca0d4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestObj*</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_sub_obj_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestObj* regress_test_sub_obj_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page
new file mode 100644
index 0000000..f6488d8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page
@@ -0,0 +1,61 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSubObj</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestObj</code>
+      <item>
+        <code>Regress.TestSubObj</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page
new file mode 100644
index 0000000..a34a25c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.unset_bare"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_unset_bare</api:name>
+      <api:arg>
+        <api:type>RegressTestSubObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_sub_obj_unset_bare</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_sub_obj_unset_bare (RegressTestSubObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page
new file mode 100644
index 0000000..6bbd999
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObjClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSubObjClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page
new file mode 100644
index 0000000..d815a3f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestTypeGUInt64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestTypeGUInt64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page
new file mode 100644
index 0000000..d7333b8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x-testbool"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="property"/>
+    <title type="link" role="topic">testbool</title>
+
+  </info>
+  <title>Regress.TestWi8021x:testbool</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page
new file mode 100644
index 0000000..d54ed68
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.get_testbool"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_get_testbool</api:name>
+      <api:arg>
+        <api:type>RegressTestWi8021x*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_wi_802_1x_get_testbool</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_wi_802_1x_get_testbool (RegressTestWi8021x* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page
new file mode 100644
index 0000000..2c47b28
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestWi8021x*</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_wi_802_1x_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestWi8021x* regress_test_wi_802_1x_new (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page
new file mode 100644
index 0000000..9b05318
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestWi8021x</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestWi8021x</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-csrc"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page
new file mode 100644
index 0000000..a32a70a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.set_testbool"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_set_testbool</api:name>
+      <api:arg>
+        <api:type>RegressTestWi8021x*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gboolean</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_wi_802_1x_set_testbool</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_wi_802_1x_set_testbool (RegressTestWi8021x* obj,
+                                          gboolean v);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>v :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page
new file mode 100644
index 0000000..cabdd48
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_static_method</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_wi_802_1x_static_method</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_wi_802_1x_static_method (int x);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page
new file mode 100644
index 0000000..071d9a6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021xClass"
+      type="topic"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestWi8021xClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.UTF8_CONSTANT.page b/tests/scanner/Regress-1.0-C-expected/Regress.UTF8_CONSTANT.page
new file mode 100644
index 0000000..8f3f532
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.UTF8_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.UTF8_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.UTF8_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page b/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page
new file mode 100644
index 0000000..bfd52d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.VaListAlias"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.VaListAlias</title>
+  
+  
+  
+    <p>Typedef'd va_list for additional reasons</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page b/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page
new file mode 100644
index 0000000..5f8b1ff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.aliased_caller_alloc"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_aliased_caller_alloc</api:name>
+      <api:arg>
+        <api:type>RegressAliasedTestBoxed*</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_aliased_caller_alloc</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_aliased_caller_alloc (RegressAliasedTestBoxed* boxed);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page
new file mode 100644
index 0000000..0510282
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_attribute_func"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_annotation_attribute_func</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const gchar*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_attribute_func</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_annotation_attribute_func (RegressAnnotationObject* object,
+                                        const gchar* data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/>.</p></dd>
+<dt><p>data :</p></dt>
+<dd><p>Some data.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page
new file mode 100644
index 0000000..337b207
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_custom_destroy"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_custom_destroy</api:name>
+      <api:arg>
+        <api:type>RegressAnnotationCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressAnnotationNotifyFunc</api:type>
+        <api:name>destroy</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_custom_destroy</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_custom_destroy (RegressAnnotationCallback callback,
+                                        RegressAnnotationNotifyFunc destroy,
+                                        gpointer data);
+</code></synopsis>
+
+  
+    <p>Test messing up the heuristic of closure/destroy-notification
+detection, and fixing it via regress_annotations.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd><p>Destroy notification</p></dd>
+<dt><p>destroy :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page
new file mode 100644
index 0000000..6a1c723
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_get_source_file"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_get_source_file</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_get_source_file</title>
+  
+<synopsis><code mime="text/x-csrc">
+char* regress_annotation_get_source_file (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>Source file</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page
new file mode 100644
index 0000000..4b47160
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_init"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_init</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>argc</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>char***</api:type>
+        <api:name>argv</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_init</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_init (int* argc,
+                              char*** argv);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>argc :</p></dt>
+<dd><p>The number of args.</p></dd>
+<dt><p>argv :</p></dt>
+<dd><p>The arguments.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page
new file mode 100644
index 0000000..4c485ea
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_invalid_regress_annotation"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_invalid_regress_annotation</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_invalid_regress_annotation</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_invalid_regress_annotation (int foo);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo :</p></dt>
+<dd><p>some text (e.g. example) or else</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page
new file mode 100644
index 0000000..496fcc5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_ptr_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_ptr_array</api:name>
+      <api:arg>
+        <api:type>GValue*</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_ptr_array</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_ptr_array (GValue* array);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd><p>the array</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page
new file mode 100644
index 0000000..1a345a5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_return_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_return_array</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_return_array</title>
+  
+<synopsis><code mime="text/x-csrc">
+char** regress_annotation_return_array (int* length);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>length :</p></dt>
+<dd><p>Number of return values</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page
new file mode 100644
index 0000000..968cfe1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_return_filename"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gchar*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_return_filename</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_return_filename</title>
+  
+<synopsis><code mime="text/x-csrc">
+gchar* regress_annotation_return_filename (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An annotated filename</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page
new file mode 100644
index 0000000..663fd9d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_set_source_file"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_set_source_file</api:name>
+      <api:arg>
+        <api:type>char*</api:type>
+        <api:name>fname</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_set_source_file</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_set_source_file (char* fname);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>fname :</p></dt>
+<dd><p>Source file</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page
new file mode 100644
index 0000000..a4d11d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_space_after_comment_bug631690"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_space_after_comment_bug631690</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_space_after_comment_bug631690</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_space_after_comment_bug631690 (void);
+</code></synopsis>
+
+  
+    <p>Explicitly test having a space after the ** here.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page
new file mode 100644
index 0000000..520b473
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_array_length"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_array_length</api:name>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>n_properties</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>utf8*</api:type>
+        <api:name>properties</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_string_array_length</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_string_array_length (guint n_properties,
+                                             utf8* properties);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_properties :</p></dt>
+<dd></dd>
+<dt><p>properties :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page
new file mode 100644
index 0000000..e90fa51
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_zero_terminated"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_zero_terminated</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_string_zero_terminated</title>
+  
+<synopsis><code mime="text/x-csrc">
+char** regress_annotation_string_zero_terminated (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page
new file mode 100644
index 0000000..34293f0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_zero_terminated_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_zero_terminated_out</api:name>
+      <api:arg>
+        <api:type>char***</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_string_zero_terminated_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_string_zero_terminated_out (char*** out);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page
new file mode 100644
index 0000000..7101371
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_test_parsing_bug630862"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_test_parsing_bug630862</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_test_parsing_bug630862</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_annotation_test_parsing_bug630862 (void);
+</code></synopsis>
+
+  
+    <p>See https://bugzilla.gnome.org/show_bug.cgi?id=630862</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An object, note the colon:in here</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page
new file mode 100644
index 0000000..1607c63
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_transfer_floating"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject*</api:type>
+      </api:returns>
+      <api:name>regress_annotation_transfer_floating</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_transfer_floating</title>
+  
+<synopsis><code mime="text/x-csrc">
+GObject* regress_annotation_transfer_floating (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>A floating object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page
new file mode 100644
index 0000000..a3a0fb7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_versioned"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_versioned</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_annotation_versioned</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_annotation_versioned (void);
+</code></synopsis>
+
+  
+    
+  
+  
+    <p>Since 0.6</p>
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page b/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page
new file mode 100644
index 0000000..c5b4cb6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.atest_error_quark"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GQuark</api:type>
+      </api:returns>
+      <api:name>regress_atest_error_quark</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_atest_error_quark</title>
+  
+<synopsis><code mime="text/x-csrc">
+GQuark regress_atest_error_quark (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page
new file mode 100644
index 0000000..f5ce697
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_async_ready_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_async_ready_callback</api:name>
+      <api:arg>
+        <api:type>GCancellable*</api:type>
+        <api:name>cancellable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GAsyncReadyCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_async_ready_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_async_ready_callback (GCancellable* cancellable,
+                                       GAsyncReadyCallback callback,
+                                       gpointer user_data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>cancellable :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page
new file mode 100644
index 0000000..6158bf2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_destroy_notify_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_destroy_notify_callback</api:name>
+      <api:arg>
+        <api:type>RegressFooCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GDestroyNotify</api:type>
+        <api:name>destroy</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_destroy_notify_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_destroy_notify_callback (RegressFooCallback callback,
+                                          gpointer data,
+                                          GDestroyNotify destroy);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>destroy :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page
new file mode 100644
index 0000000..c3ed369
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_init"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_foo_init</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_init</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_foo_init (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page
new file mode 100644
index 0000000..07c9c6d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_method_external_references"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_method_external_references</api:name>
+      <api:arg>
+        <api:type>UtilityObject*</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>UtilityEnumType</api:type>
+        <api:name>e</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>UtilityFlagType</api:type>
+        <api:name>f</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>UtilityStruct</api:type>
+        <api:name>s</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_method_external_references</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_method_external_references (UtilityObject* object,
+                                             UtilityEnumType e,
+                                             UtilityFlagType f,
+                                             UtilityStruct s);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>e :</p></dt>
+<dd></dd>
+<dt><p>f :</p></dt>
+<dd></dd>
+<dt><p>s :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page
new file mode 100644
index 0000000..d65bfa1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_not_a_constructor_new"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressFooObject*</api:type>
+      </api:returns>
+      <api:name>regress_foo_not_a_constructor_new</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_not_a_constructor_new</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressFooObject* regress_foo_not_a_constructor_new (void);
+</code></synopsis>
+
+  
+    <p>This should be scanned as a top-level function, and shouldn't cause
+a "Can't find matching type for constructor" warning.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page
new file mode 100644
index 0000000..8fb9d10
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_skip_me"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_skip_me</api:name>
+      <api:arg>
+        <api:type>RegressFooSkippable</api:type>
+        <api:name>fs</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_skip_me</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_skip_me (RegressFooSkippable fs);
+</code></synopsis>
+
+  
+    <p>Does something that's only interesting from C and should not be
+exposed to language bindings.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>fs :</p></dt>
+<dd><p>a <link xref="Regress.FooSkippable"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page
new file mode 100644
index 0000000..0ed4e2f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_some_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_some_variant</api:name>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>va_list</api:type>
+        <api:name>args</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_some_variant</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_some_variant (guint x,
+                               va_list args);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>args :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page
new file mode 100644
index 0000000..3755024
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_some_variant_ptr"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_some_variant_ptr</api:name>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>va_list*</api:type>
+        <api:name>args</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_some_variant_ptr</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_some_variant_ptr (guint x,
+                                   va_list* args);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>args :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page
new file mode 100644
index 0000000..cf127cb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_array</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_array</title>
+  
+<synopsis><code mime="text/x-csrc">
+GArray* regress_foo_test_array (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page
new file mode 100644
index 0000000..79c50cf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_char_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_char_param</api:name>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_const_char_param</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_const_char_param (const char* param);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page
new file mode 100644
index 0000000..cb286e6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_char_retval"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const char*</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_char_retval</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_const_char_retval</title>
+  
+<synopsis><code mime="text/x-csrc">
+const char* regress_foo_test_const_char_retval (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page
new file mode 100644
index 0000000..be33c5a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_struct_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_struct_param</api:name>
+      <api:arg>
+        <api:type>const RegressFooStruct*</api:type>
+        <api:name>param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_const_struct_param</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_const_struct_param (const RegressFooStruct* param);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page
new file mode 100644
index 0000000..783b248
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_struct_retval"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const RegressFooStruct*</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_struct_retval</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_const_struct_retval</title>
+  
+<synopsis><code mime="text/x-csrc">
+const RegressFooStruct* regress_foo_test_const_struct_retval (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page
new file mode 100644
index 0000000..83881f6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_string_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_string_array</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_string_array</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_string_array (char** array);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page
new file mode 100644
index 0000000..c3c45b1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_string_array_with_g"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_string_array_with_g</api:name>
+      <api:arg>
+        <api:type>gchar**</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_string_array_with_g</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_string_array_with_g (gchar** array);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page
new file mode 100644
index 0000000..b3ded91
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_unsigned_qualifier"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_unsigned_qualifier</api:name>
+      <api:arg>
+        <api:type>unsigned int</api:type>
+        <api:name>unsigned_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_unsigned_qualifier</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_unsigned_qualifier (unsigned int unsigned_param);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>unsigned_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page
new file mode 100644
index 0000000..0610002
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_unsigned_type"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_unsigned_type</api:name>
+      <api:arg>
+        <api:type>unsigned</api:type>
+        <api:name>unsigned_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_unsigned_type</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_unsigned_type (unsigned unsigned_param);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>unsigned_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page
new file mode 100644
index 0000000..9024a14
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback</api:name>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressFooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_varargs_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_varargs_callback (gint i,
+                                        RegressFooVarargsCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page
new file mode 100644
index 0000000..f89f547
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback2</api:name>
+      <api:arg>
+        <api:type>RegressFooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_varargs_callback2</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_varargs_callback2 (RegressFooVarargsCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page
new file mode 100644
index 0000000..e34cfc7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback3"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback3</api:name>
+      <api:arg>
+        <api:type>RegressFooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressFooVarargsCallback</api:type>
+        <api:name>callback2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_foo_test_varargs_callback3</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_foo_test_varargs_callback3 (RegressFooVarargsCallback callback,
+                                         RegressFooVarargsCallback callback2);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>callback2 :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page
new file mode 100644
index 0000000..ebc6a7f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.func_obj_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_func_obj_null_in</api:name>
+      <api:arg>
+        <api:type>RegressTestObj*</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_func_obj_null_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_func_obj_null_in (RegressTestObj* obj);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page
new file mode 100644
index 0000000..407cb26
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.global_get_flags_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_global_get_flags_out</api:name>
+      <api:arg>
+        <api:type>RegressTestFlags*</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_global_get_flags_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_global_get_flags_out (RegressTestFlags* v);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>v :</p></dt>
+<dd><p>A flags value</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page b/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page
new file mode 100644
index 0000000..802f00f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.has_parameter_named_attrs"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_has_parameter_named_attrs</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer*</api:type>
+        <api:name>attributes</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_has_parameter_named_attrs</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_has_parameter_named_attrs (int foo,
+                                        gpointer* attributes);
+</code></synopsis>
+
+  
+    <p>This test case mirrors GnomeKeyringPasswordSchema from
+libgnome-keyring.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>foo :</p></dt>
+<dd><p>some int</p></dd>
+<dt><p>attributes :</p></dt>
+<dd><p>list of attributes</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page b/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page
new file mode 100644
index 0000000..d769d5b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.introspectable_via_alias"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_introspectable_via_alias</api:name>
+      <api:arg>
+        <api:type>RegressPtrArrayAlias*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_introspectable_via_alias</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_introspectable_via_alias (RegressPtrArrayAlias* data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page b/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page
new file mode 100644
index 0000000..263f7c8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.not_introspectable_via_alias"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_not_introspectable_via_alias</api:name>
+      <api:arg>
+        <api:type>RegressVaListAlias</api:type>
+        <api:name>ok</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_not_introspectable_via_alias</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_not_introspectable_via_alias (RegressVaListAlias ok);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ok :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page b/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page
new file mode 100644
index 0000000..78ba1bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.random_function_with_skipped_structure"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_random_function_with_skipped_structure</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressSkippedStructure*</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_random_function_with_skipped_structure</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_random_function_with_skipped_structure (int x,
+                                                     RegressSkippedStructure* foo,
+                                                     double v);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>v :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page b/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page
new file mode 100644
index 0000000..7ced795
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.set_abort_on_error"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_set_abort_on_error</api:name>
+      <api:arg>
+        <api:type>gboolean</api:type>
+        <api:name>abort_on_error</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_set_abort_on_error</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_set_abort_on_error (gboolean abort_on_error);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>abort_on_error :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page
new file mode 100644
index 0000000..c7a2b4a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackArray</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_array_callback (RegressTestCallbackArray callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page
new file mode 100644
index 0000000..016a967
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_out_objects"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_out_objects</api:name>
+      <api:arg>
+        <api:type>RegressTestObj***</api:type>
+        <api:name>objs</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_fixed_out_objects</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_array_fixed_out_objects (RegressTestObj*** objs);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>objs :</p></dt>
+<dd><p>An array of <link xref="Regress.TestObj"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page
new file mode 100644
index 0000000..7b75672
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_in</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_fixed_size_int_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_array_fixed_size_int_in (int* ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the sum of the items in <code>ints</code></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page
new file mode 100644
index 0000000..8d8dda5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_out</api:name>
+      <api:arg>
+        <api:type>int**</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_fixed_size_int_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_array_fixed_size_int_out (int** ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers ranging from 0 to 4</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page
new file mode 100644
index 0000000..6a67355
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int*</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_fixed_size_int_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+int* regress_test_array_fixed_size_int_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>a list of 5 integers ranging from 0 to 4</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page
new file mode 100644
index 0000000..087ea63
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint16_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint16_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint16*</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_gint16_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_array_gint16_in (int n_ints,
+                                  gint16* ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page
new file mode 100644
index 0000000..88ef582
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint32_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint32</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint32_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint32*</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_gint32_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint32 regress_test_array_gint32_in (int n_ints,
+                                     gint32* ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page
new file mode 100644
index 0000000..0dd47fc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint64_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint64</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint64_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint64*</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_gint64_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint64 regress_test_array_gint64_in (int n_ints,
+                                     gint64* ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page
new file mode 100644
index 0000000..32a5cb7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint8_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint8_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gint8*</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_gint8_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_array_gint8_in (int n_ints,
+                                 gint8* ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page
new file mode 100644
index 0000000..178ccda
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gtype_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gtype_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_types</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GType*</api:type>
+        <api:name>types</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_gtype_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+char* regress_test_array_gtype_in (int n_types,
+                                   GType* types);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_types :</p></dt>
+<dd></dd>
+<dt><p>types :</p></dt>
+<dd><p>List of types</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>string representation of provided types</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page
new file mode 100644
index 0000000..37413f2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_full_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int*</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_full_out</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_full_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+int* regress_test_array_int_full_out (int* len);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>len :</p></dt>
+<dd><p>length of the returned array.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>a new array of integers.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page
new file mode 100644
index 0000000..f9ba58c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_array_int_in (int n_ints,
+                               int* ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page
new file mode 100644
index 0000000..b970df7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_inout"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_inout</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int**</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_inout</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_array_int_inout (int* n_ints,
+                                   int** ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd><p>the length of <code>ints</code></p></dd>
+<dt><p>ints :</p></dt>
+<dd><p>a list of integers whose items will be increased by 1, except the first that will be dropped</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page
new file mode 100644
index 0000000..e341b8c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_none_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int*</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_none_out</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_none_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+int* regress_test_array_int_none_out (int* len);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>len :</p></dt>
+<dd><p>length of the returned array.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>a static array of integers.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page
new file mode 100644
index 0000000..9afb1ff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_null_in</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_null_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_array_int_null_in (int* arr,
+                                     int len);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>len :</p></dt>
+<dd><p>length</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page
new file mode 100644
index 0000000..45ef84f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_null_out</api:name>
+      <api:arg>
+        <api:type>int**</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_null_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_array_int_null_out (int** arr,
+                                      int* len);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>len :</p></dt>
+<dd><p>length</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page
new file mode 100644
index 0000000..be18643
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_out</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int**</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_array_int_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_array_int_out (int* n_ints,
+                                 int** ints);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd><p>the length of <code>ints</code></p></dd>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers, from 0 to 4 in consecutive order</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page
new file mode 100644
index 0000000..6e3421a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_async_ready_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_async_ready_callback</api:name>
+      <api:arg>
+        <api:type>GAsyncReadyCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_async_ready_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_async_ready_callback (GAsyncReadyCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page
new file mode 100644
index 0000000..aada509
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean</api:name>
+      <api:arg>
+        <api:type>gboolean</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boolean</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_boolean (gboolean in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page
new file mode 100644
index 0000000..2c84d1c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean_false"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean_false</api:name>
+      <api:arg>
+        <api:type>gboolean</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boolean_false</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_boolean_false (gboolean in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page
new file mode 100644
index 0000000..7d1a949
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean_true"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean_true</api:name>
+      <api:arg>
+        <api:type>gboolean</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_boolean_true</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_boolean_true (gboolean in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page
new file mode 100644
index 0000000..dfbc29a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_context_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo_t*</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_context_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_cairo_context_full_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+cairo_t* regress_test_cairo_context_full_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page
new file mode 100644
index 0000000..6310579
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_context_none_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_context_none_in</api:name>
+      <api:arg>
+        <api:type>cairo_t*</api:type>
+        <api:name>context</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_cairo_context_none_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_cairo_context_none_in (cairo_t* context);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>context :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page
new file mode 100644
index 0000000..4ea5516
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_full_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_full_out</api:name>
+      <api:arg>
+        <api:type>cairo_surface_t**</api:type>
+        <api:name>surface</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_cairo_surface_full_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_cairo_surface_full_out (cairo_surface_t** surface);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>surface :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page
new file mode 100644
index 0000000..0b15ce0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo_surface_t*</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_cairo_surface_full_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+cairo_surface_t* regress_test_cairo_surface_full_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page
new file mode 100644
index 0000000..a1903ce
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_none_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_none_in</api:name>
+      <api:arg>
+        <api:type>cairo_surface_t*</api:type>
+        <api:name>surface</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_cairo_surface_none_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_cairo_surface_none_in (cairo_surface_t* surface);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>surface :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page
new file mode 100644
index 0000000..e99ecb4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_none_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo_surface_t*</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_none_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_cairo_surface_none_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+cairo_surface_t* regress_test_cairo_surface_none_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page
new file mode 100644
index 0000000..99a668e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_callback (RegressTestCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page
new file mode 100644
index 0000000..f2891ed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_async"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_async</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback_async</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_callback_async (RegressTestCallbackUserData callback,
+                                  gpointer user_data);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page
new file mode 100644
index 0000000..6a36513
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_destroy_notify"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_destroy_notify</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GDestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback_destroy_notify</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_callback_destroy_notify (RegressTestCallbackUserData callback,
+                                          gpointer user_data,
+                                          GDestroyNotify notify);
+</code></synopsis>
+
+  
+    <p>Notified - callback persists until a DestroyNotify delegate
+is invoked.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page
new file mode 100644
index 0000000..148fc31
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_destroy_notify_no_user_data"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_destroy_notify_no_user_data</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GDestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback_destroy_notify_no_user_data</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_callback_destroy_notify_no_user_data (RegressTestCallbackUserData callback,
+                                                       GDestroyNotify notify);
+</code></synopsis>
+
+  
+    <p>Adds a scope notified callback with no user data. This can invoke an error
+condition in bindings which needs to be tested.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page
new file mode 100644
index 0000000..a666a33
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_thaw_async"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_thaw_async</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback_thaw_async</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_callback_thaw_async (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page
new file mode 100644
index 0000000..0a4ce3d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_thaw_notifications"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_thaw_notifications</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback_thaw_notifications</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_callback_thaw_notifications (void);
+</code></synopsis>
+
+  
+    <p>Invokes all callbacks installed by #test_callback_destroy_notify(),
+adding up their return values, and removes them, invoking the
+corresponding destroy notfications.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>Sum of the return values of the invoked callbacks.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page
new file mode 100644
index 0000000..f577a5e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_user_data"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_user_data</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_callback_user_data</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_callback_user_data (RegressTestCallbackUserData callback,
+                                     gpointer user_data);
+</code></synopsis>
+
+  
+    <p>Call - callback parameter persists for the duration of the method
+call and can be released on return.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page
new file mode 100644
index 0000000..41b5d50
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_closure</api:name>
+      <api:arg>
+        <api:type>GClosure*</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_closure</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_closure (GClosure* closure);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page
new file mode 100644
index 0000000..971f21e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure_one_arg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_closure_one_arg</api:name>
+      <api:arg>
+        <api:type>GClosure*</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>arg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_closure_one_arg</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_closure_one_arg (GClosure* closure,
+                                  int arg);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd></dd>
+<dt><p>arg :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page
new file mode 100644
index 0000000..1f5a56a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_test_closure_variant</api:name>
+      <api:arg>
+        <api:type>GClosure*</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GVariant*</api:type>
+        <api:name>arg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_closure_variant</title>
+  
+<synopsis><code mime="text/x-csrc">
+GVariant* regress_test_closure_variant (GClosure* closure,
+                                        GVariant* arg);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd><p>GClosure which takes one GVariant and returns a GVariant</p></dd>
+<dt><p>arg :</p></dt>
+<dd><p>a GVariant passed as argument to <code>closure</code></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the return value of <code>closure</code></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page
new file mode 100644
index 0000000..e606feb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_date_in_gvalue"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GValue*</api:type>
+      </api:returns>
+      <api:name>regress_test_date_in_gvalue</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_date_in_gvalue</title>
+  
+<synopsis><code mime="text/x-csrc">
+GValue* regress_test_date_in_gvalue (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page
new file mode 100644
index 0000000..1fb55be
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_def_error_quark"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GQuark</api:type>
+      </api:returns>
+      <api:name>regress_test_def_error_quark</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_def_error_quark</title>
+  
+<synopsis><code mime="text/x-csrc">
+GQuark regress_test_def_error_quark (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page
new file mode 100644
index 0000000..7384ecd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_double"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gdouble</api:type>
+      </api:returns>
+      <api:name>regress_test_double</api:name>
+      <api:arg>
+        <api:type>gdouble</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_double</title>
+  
+<synopsis><code mime="text/x-csrc">
+gdouble regress_test_double (gdouble in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page
new file mode 100644
index 0000000..e490ac3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_filename_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GSList*</api:type>
+      </api:returns>
+      <api:name>regress_test_filename_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_filename_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GSList* regress_test_filename_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>list of strings</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page
new file mode 100644
index 0000000..f50930d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_float"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gfloat</api:type>
+      </api:returns>
+      <api:name>regress_test_float</api:name>
+      <api:arg>
+        <api:type>gfloat</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_float</title>
+  
+<synopsis><code mime="text/x-csrc">
+gfloat regress_test_float (gfloat in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page
new file mode 100644
index 0000000..2363975
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_garray_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_test_garray_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_garray_container_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GPtrArray* regress_test_garray_container_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page
new file mode 100644
index 0000000..a433bfa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_garray_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_test_garray_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_garray_full_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GPtrArray* regress_test_garray_full_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page
new file mode 100644
index 0000000..4aa5615
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gerror_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_gerror_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_gerror_callback (RegressTestCallbackGError callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page
new file mode 100644
index 0000000..fd29122
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_container_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_test_ghash_container_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page
new file mode 100644
index 0000000..4ad5cb5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_everything_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_test_ghash_everything_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page
new file mode 100644
index 0000000..8708d8d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_gvalue_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_gvalue_in</api:name>
+      <api:arg>
+        <api:type>GHashTable*</api:type>
+        <api:name>hash</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_gvalue_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_ghash_gvalue_in (GHashTable* hash);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>hash :</p></dt>
+<dd><p>the hash table returned by <link xref="Regress.test_ghash_gvalue_return"/>.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page
new file mode 100644
index 0000000..9868259
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_gvalue_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_gvalue_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_gvalue_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_test_ghash_gvalue_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page
new file mode 100644
index 0000000..8af4cbd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nested_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nested_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_nested_everything_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_test_ghash_nested_everything_return (void);
+</code></synopsis>
+
+  
+    <p>Specify nested parameterized types directly with the (type ) annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page
new file mode 100644
index 0000000..8612e66
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nested_everything_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nested_everything_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_nested_everything_return2</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_test_ghash_nested_everything_return2 (void);
+</code></synopsis>
+
+  
+    <p>Another way of specifying nested parameterized types: using the
+element-type annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page
new file mode 100644
index 0000000..8a21bbf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_in</api:name>
+      <api:arg>
+        <api:type>const GHashTable*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_nothing_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_ghash_nothing_in (const GHashTable* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page
new file mode 100644
index 0000000..83f5c6e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_in2</api:name>
+      <api:arg>
+        <api:type>GHashTable*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_nothing_in2</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_ghash_nothing_in2 (GHashTable* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page
new file mode 100644
index 0000000..a0af756
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_nothing_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const GHashTable* regress_test_ghash_nothing_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page
new file mode 100644
index 0000000..8a5c7b3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_nothing_return2</title>
+  
+<synopsis><code mime="text/x-csrc">
+GHashTable* regress_test_ghash_nothing_return2 (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page
new file mode 100644
index 0000000..fa7c04e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_in</api:name>
+      <api:arg>
+        <api:type>const GHashTable*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_null_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_ghash_null_in (const GHashTable* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page
new file mode 100644
index 0000000..666fdf0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_out</api:name>
+      <api:arg>
+        <api:type>const GHashTable**</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_null_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_ghash_null_out (const GHashTable** out);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page
new file mode 100644
index 0000000..d5c9154
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const GHashTable*</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_ghash_null_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const GHashTable* regress_test_ghash_null_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page
new file mode 100644
index 0000000..053fbd8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GList*</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_container_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GList* regress_test_glist_container_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page
new file mode 100644
index 0000000..05efc25
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GList*</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_everything_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GList* regress_test_glist_everything_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page
new file mode 100644
index 0000000..cab2d96
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_in</api:name>
+      <api:arg>
+        <api:type>const GList*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_nothing_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_glist_nothing_in (const GList* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page
new file mode 100644
index 0000000..ec30658
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_in2</api:name>
+      <api:arg>
+        <api:type>GList*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_nothing_in2</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_glist_nothing_in2 (GList* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page
new file mode 100644
index 0000000..a5d436f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const GList*</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_nothing_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const GList* regress_test_glist_nothing_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page
new file mode 100644
index 0000000..1af8f86
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GList*</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_nothing_return2</title>
+  
+<synopsis><code mime="text/x-csrc">
+GList* regress_test_glist_nothing_return2 (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page
new file mode 100644
index 0000000..c691426
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_null_in</api:name>
+      <api:arg>
+        <api:type>GSList*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_null_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_glist_null_in (GSList* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page
new file mode 100644
index 0000000..11ae56f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_null_out</api:name>
+      <api:arg>
+        <api:type>GSList**</api:type>
+        <api:name>out_list</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_glist_null_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_glist_null_out (GSList** out_list);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out_list :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page
new file mode 100644
index 0000000..3f23814
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GSList*</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_container_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GSList* regress_test_gslist_container_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page
new file mode 100644
index 0000000..8f9319c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GSList*</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_everything_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+GSList* regress_test_gslist_everything_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page
new file mode 100644
index 0000000..22b3230
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_in</api:name>
+      <api:arg>
+        <api:type>const GSList*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_nothing_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_gslist_nothing_in (const GSList* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page
new file mode 100644
index 0000000..f4f3bfc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_in2</api:name>
+      <api:arg>
+        <api:type>GSList*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_nothing_in2</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_gslist_nothing_in2 (GSList* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page
new file mode 100644
index 0000000..8c68039
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const GSList*</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_nothing_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const GSList* regress_test_gslist_nothing_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page
new file mode 100644
index 0000000..38abfcf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GSList*</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_nothing_return2</title>
+  
+<synopsis><code mime="text/x-csrc">
+GSList* regress_test_gslist_nothing_return2 (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page
new file mode 100644
index 0000000..00bd670
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_null_in</api:name>
+      <api:arg>
+        <api:type>GSList*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_null_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_gslist_null_in (GSList* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page
new file mode 100644
index 0000000..efa4df6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_null_out</api:name>
+      <api:arg>
+        <api:type>GSList**</api:type>
+        <api:name>out_list</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_gslist_null_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_gslist_null_out (GSList** out_list);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out_list :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page
new file mode 100644
index 0000000..c99a531
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gtype"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GType</api:type>
+      </api:returns>
+      <api:name>regress_test_gtype</api:name>
+      <api:arg>
+        <api:type>GType</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_gtype</title>
+  
+<synopsis><code mime="text/x-csrc">
+GType regress_test_gtype (GType in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page
new file mode 100644
index 0000000..f884014
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_as"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_as</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gvariant_as</title>
+  
+<synopsis><code mime="text/x-csrc">
+GVariant* regress_test_gvariant_as (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page
new file mode 100644
index 0000000..c39a003
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_asv"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_asv</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gvariant_asv</title>
+  
+<synopsis><code mime="text/x-csrc">
+GVariant* regress_test_gvariant_asv (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page
new file mode 100644
index 0000000..58f1b97
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_i"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_i</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gvariant_i</title>
+  
+<synopsis><code mime="text/x-csrc">
+GVariant* regress_test_gvariant_i (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page
new file mode 100644
index 0000000..051a307
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_s"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_s</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gvariant_s</title>
+  
+<synopsis><code mime="text/x-csrc">
+GVariant* regress_test_gvariant_s (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page
new file mode 100644
index 0000000..f1e8f7b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_v"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_v</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_gvariant_v</title>
+  
+<synopsis><code mime="text/x-csrc">
+GVariant* regress_test_gvariant_v (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page
new file mode 100644
index 0000000..abbdbbb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_hash_table_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_hash_table_callback</api:name>
+      <api:arg>
+        <api:type>GHashTable*</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestCallbackHashtable</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_hash_table_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_hash_table_callback (GHashTable* data,
+                                       RegressTestCallbackHashtable callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>GHashTable that gets passed to callback</p></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page
new file mode 100644
index 0000000..2e271a5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint</api:type>
+      </api:returns>
+      <api:name>regress_test_int</api:name>
+      <api:arg>
+        <api:type>gint</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint regress_test_int (gint in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page
new file mode 100644
index 0000000..6ee0059
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int16"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint16</api:type>
+      </api:returns>
+      <api:name>regress_test_int16</api:name>
+      <api:arg>
+        <api:type>gint16</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int16</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint16 regress_test_int16 (gint16 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page
new file mode 100644
index 0000000..58ef340
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int32"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint32</api:type>
+      </api:returns>
+      <api:name>regress_test_int32</api:name>
+      <api:arg>
+        <api:type>gint32</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int32</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint32 regress_test_int32 (gint32 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page
new file mode 100644
index 0000000..bfe12d6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int64"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint64</api:type>
+      </api:returns>
+      <api:name>regress_test_int64</api:name>
+      <api:arg>
+        <api:type>gint64</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int64</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint64 regress_test_int64 (gint64 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page
new file mode 100644
index 0000000..0b4b43a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint8</api:type>
+      </api:returns>
+      <api:name>regress_test_int8</api:name>
+      <api:arg>
+        <api:type>gint8</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int8</title>
+  
+<synopsis><code mime="text/x-csrc">
+gint8 regress_test_int8 (gint8 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page
new file mode 100644
index 0000000..ae8ecfc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int_out_utf8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_int_out_utf8</api:name>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int_out_utf8</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_int_out_utf8 (int* length,
+                                const char* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>length :</p></dt>
+<dd></dd>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page
new file mode 100644
index 0000000..4fb211e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int_value_arg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_int_value_arg</api:name>
+      <api:arg>
+        <api:type>const GValue*</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_int_value_arg</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_int_value_arg (const GValue* v);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>v :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page
new file mode 100644
index 0000000..638f066
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_long"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>glong</api:type>
+      </api:returns>
+      <api:name>regress_test_long</api:name>
+      <api:arg>
+        <api:type>glong</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_long</title>
+  
+<synopsis><code mime="text/x-csrc">
+glong regress_test_long (glong in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page
new file mode 100644
index 0000000..b0b16c5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multi_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_multi_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_multi_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+int regress_test_multi_callback (RegressTestCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page
new file mode 100644
index 0000000..5dc68cb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multi_double_args"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_multi_double_args</api:name>
+      <api:arg>
+        <api:type>gdouble</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gdouble*</api:type>
+        <api:name>one</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gdouble*</api:type>
+        <api:name>two</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_multi_double_args</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_multi_double_args (gdouble in,
+                                     gdouble* one,
+                                     gdouble* two);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>one :</p></dt>
+<dd></dd>
+<dt><p>two :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page
new file mode 100644
index 0000000..439f66a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multiline_doc_comments"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_multiline_doc_comments</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_multiline_doc_comments</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_multiline_doc_comments (void);
+</code></synopsis>
+
+  
+    <p>This is a function.</p><p>It has multiple lines in the documentation.</p><p>The sky is blue.</p><p>You will give me your credit card number.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page
new file mode 100644
index 0000000..30d6e07
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<page id="Regress.test_nested_parameter"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_nested_parameter</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_nested_parameter</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_nested_parameter (int a);
+</code></synopsis>
+
+  
+    <p>&lt;informaltable&gt;
+  &lt;tgroup cols="3"&gt;
+    &lt;thead&gt;
+      &lt;row&gt;
+        &lt;entry&gt;Syntax&lt;/entry&gt;
+        &lt;entry&gt;Explanation&lt;/entry&gt;
+        &lt;entry&gt;Examples&lt;/entry&gt;
+      &lt;/row&gt;
+    &lt;/thead&gt;
+    &lt;tbody&gt;
+      &lt;row&gt;
+        &lt;entry&gt;rgb(@r, @g, @b)&lt;/entry&gt;
+        &lt;entry&gt;An opaque color; @r, @g, @b can be either integers between
+               0 and 255 or percentages&lt;/entry&gt;
+        &lt;entry&gt;&lt;literallayout&gt;rgb(128, 10, 54)
+rgb(20%, 30%, 0%)&lt;/literallayout&gt;&lt;/entry&gt;
+      &lt;/row&gt;
+      &lt;row&gt;
+        &lt;entry&gt;rgba(@r, @g, @b, <code>a</code>)&lt;/entry&gt;
+        &lt;entry&gt;A translucent color; @r, @g, @b are as in the previous row,
+               <code>a</code> is a floating point number between 0 and 1&lt;/entry&gt;
+        &lt;entry&gt;&lt;literallayout&gt;rgba(255, 255, 0, 0.5)&lt;/literallayout&gt;&lt;/entry&gt;
+      &lt;/row&gt;
+   &lt;/tbody&gt;
+ &lt;/tgroup&gt;
+&lt;/informaltable&gt;</p><p>What we're testing here is that the scanner ignores the <code>a</code> nested inside XML.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>An integer</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page
new file mode 100644
index 0000000..995b82b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_null_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_null_gerror_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_null_gerror_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_null_gerror_callback (RegressTestCallbackGError callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page
new file mode 100644
index 0000000..0bb38c9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_owned_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_owned_gerror_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallbackOwnedGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_owned_gerror_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_owned_gerror_callback (RegressTestCallbackOwnedGError callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page
new file mode 100644
index 0000000..135cd70
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_short"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gshort</api:type>
+      </api:returns>
+      <api:name>regress_test_short</api:name>
+      <api:arg>
+        <api:type>gshort</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_short</title>
+  
+<synopsis><code mime="text/x-csrc">
+gshort regress_test_short (gshort in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page
new file mode 100644
index 0000000..8e84405
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_simple_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestSimpleCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_simple_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_simple_callback (RegressTestSimpleCallback callback);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page
new file mode 100644
index 0000000..cf24fbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_size"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gsize</api:type>
+      </api:returns>
+      <api:name>regress_test_size</api:name>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_size</title>
+  
+<synopsis><code mime="text/x-csrc">
+gsize regress_test_size (gsize in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page
new file mode 100644
index 0000000..9764aa9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_skip_unannotated_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_skip_unannotated_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_skip_unannotated_callback</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_skip_unannotated_callback (RegressTestCallback callback);
+</code></synopsis>
+
+  
+    <p>Should not emit a warning:
+https://bugzilla.gnome.org/show_bug.cgi?id=685399</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd><p>No annotation here</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page
new file mode 100644
index 0000000..232f21d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ssize"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gssize</api:type>
+      </api:returns>
+      <api:name>regress_test_ssize</api:name>
+      <api:arg>
+        <api:type>gssize</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ssize</title>
+  
+<synopsis><code mime="text/x-csrc">
+gssize regress_test_ssize (gssize in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page
new file mode 100644
index 0000000..c1d6ce4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_in</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_strv_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_strv_in (char** arr);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page
new file mode 100644
index 0000000..0609b66
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_in_gvalue"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GValue*</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_in_gvalue</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_strv_in_gvalue</title>
+  
+<synopsis><code mime="text/x-csrc">
+GValue* regress_test_strv_in_gvalue (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page
new file mode 100644
index 0000000..dba053f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_strv_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+char** regress_test_strv_out (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page
new file mode 100644
index 0000000..01e1c37
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out_c"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out_c</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_strv_out_c</title>
+  
+<synopsis><code mime="text/x-csrc">
+const char* const* regress_test_strv_out_c (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page
new file mode 100644
index 0000000..71b89c3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out_container"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>utf8*</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out_container</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_strv_out_container</title>
+  
+<synopsis><code mime="text/x-csrc">
+char** regress_test_strv_out_container (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page
new file mode 100644
index 0000000..aea2dac
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_outarg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_outarg</api:name>
+      <api:arg>
+        <api:type>char***</api:type>
+        <api:name>retp</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_strv_outarg</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_strv_outarg (char*** retp);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>retp :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page
new file mode 100644
index 0000000..2c31dcc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_timet"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>time_t</api:type>
+      </api:returns>
+      <api:name>regress_test_timet</api:name>
+      <api:arg>
+        <api:type>time_t</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_timet</title>
+  
+<synopsis><code mime="text/x-csrc">
+time_t regress_test_timet (time_t in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page
new file mode 100644
index 0000000..bcdbd35
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_0"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_0</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double*</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_torture_signature_0</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_torture_signature_0 (int x,
+                                       double* y,
+                                       int* z,
+                                       const char* foo,
+                                       int* q,
+                                       guint m);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page
new file mode 100644
index 0000000..af54f3f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_1"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gboolean</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_1</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double*</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_torture_signature_1</title>
+  
+<synopsis><code mime="text/x-csrc">
+gboolean regress_test_torture_signature_1 (int x,
+                                           double* y,
+                                           int* z,
+                                           const char* foo,
+                                           int* q,
+                                           guint m);
+</code></synopsis>
+
+  
+    <p>This function throws an error if m is odd.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page
new file mode 100644
index 0000000..145c44f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page
@@ -0,0 +1,100 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_2</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GDestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>double*</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int*</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_torture_signature_2</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_torture_signature_2 (int x,
+                                       RegressTestCallbackUserData callback,
+                                       gpointer user_data,
+                                       GDestroyNotify notify,
+                                       double* y,
+                                       int* z,
+                                       const char* foo,
+                                       int* q,
+                                       guint m);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page
new file mode 100644
index 0000000..aeed54f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint</api:type>
+      </api:returns>
+      <api:name>regress_test_uint</api:name>
+      <api:arg>
+        <api:type>guint</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_uint</title>
+  
+<synopsis><code mime="text/x-csrc">
+guint regress_test_uint (guint in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page
new file mode 100644
index 0000000..280a15f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint16"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint16</api:type>
+      </api:returns>
+      <api:name>regress_test_uint16</api:name>
+      <api:arg>
+        <api:type>guint16</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_uint16</title>
+  
+<synopsis><code mime="text/x-csrc">
+guint16 regress_test_uint16 (guint16 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page
new file mode 100644
index 0000000..dd0ef86
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint32"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint32</api:type>
+      </api:returns>
+      <api:name>regress_test_uint32</api:name>
+      <api:arg>
+        <api:type>guint32</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_uint32</title>
+  
+<synopsis><code mime="text/x-csrc">
+guint32 regress_test_uint32 (guint32 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page
new file mode 100644
index 0000000..b4a8d64
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint64"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint64</api:type>
+      </api:returns>
+      <api:name>regress_test_uint64</api:name>
+      <api:arg>
+        <api:type>guint64</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_uint64</title>
+  
+<synopsis><code mime="text/x-csrc">
+guint64 regress_test_uint64 (guint64 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page
new file mode 100644
index 0000000..f482eb7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint8</api:type>
+      </api:returns>
+      <api:name>regress_test_uint8</api:name>
+      <api:arg>
+        <api:type>guint8</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_uint8</title>
+  
+<synopsis><code mime="text/x-csrc">
+guint8 regress_test_uint8 (guint8 in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page
new file mode 100644
index 0000000..479ebe0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ulong"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gulong</api:type>
+      </api:returns>
+      <api:name>regress_test_ulong</api:name>
+      <api:arg>
+        <api:type>gulong</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ulong</title>
+  
+<synopsis><code mime="text/x-csrc">
+gulong regress_test_ulong (gulong in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page
new file mode 100644
index 0000000..ecafbe6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_unichar"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gunichar</api:type>
+      </api:returns>
+      <api:name>regress_test_unichar</api:name>
+      <api:arg>
+        <api:type>gunichar</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_unichar</title>
+  
+<synopsis><code mime="text/x-csrc">
+gunichar regress_test_unichar (gunichar in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page
new file mode 100644
index 0000000..e5d5cb2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_unsigned_enum_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const gchar*</api:type>
+      </api:returns>
+      <api:name>regress_test_unsigned_enum_param</api:name>
+      <api:arg>
+        <api:type>RegressTestEnumUnsigned</api:type>
+        <api:name>e</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_unsigned_enum_param</title>
+  
+<synopsis><code mime="text/x-csrc">
+const gchar* regress_test_unsigned_enum_param (RegressTestEnumUnsigned e);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>e :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page
new file mode 100644
index 0000000..0e04b87
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ushort"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gushort</api:type>
+      </api:returns>
+      <api:name>regress_test_ushort</api:name>
+      <api:arg>
+        <api:type>gushort</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_ushort</title>
+  
+<synopsis><code mime="text/x-csrc">
+gushort regress_test_ushort (gushort in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page
new file mode 100644
index 0000000..b4c5090
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_const_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_const_in</api:name>
+      <api:arg>
+        <api:type>const char*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_const_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_utf8_const_in (const char* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page
new file mode 100644
index 0000000..77ef082
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_const_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const char*</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_const_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_const_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const char* regress_test_utf8_const_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>UTF-8 string</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page
new file mode 100644
index 0000000..259e232
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_inout"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_inout</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>inout</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_inout</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_utf8_inout (char** inout);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>inout :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page
new file mode 100644
index 0000000..3b1ae5d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_nonconst_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_nonconst_return</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_nonconst_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+char* regress_test_utf8_nonconst_return (void);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>UTF-8 string</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page
new file mode 100644
index 0000000..a864ae1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_null_in</api:name>
+      <api:arg>
+        <api:type>char*</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_null_in</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_utf8_null_in (char* in);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page
new file mode 100644
index 0000000..ffd3147
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_null_out</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>char_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_null_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_utf8_null_out (char** char_out);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>char_out :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page
new file mode 100644
index 0000000..d2743ea
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_utf8_out (char** out);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page
new file mode 100644
index 0000000..f8356af
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out_nonconst_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out_nonconst_return</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_out_nonconst_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+char* regress_test_utf8_out_nonconst_return (char** out);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd><p>a copy of "second"</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>a copy of "first"</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page
new file mode 100644
index 0000000..87ce92f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out_out</api:name>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>out0</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>char**</api:type>
+        <api:name>out1</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_utf8_out_out</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_utf8_out_out (char** out0,
+                                char** out1);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out0 :</p></dt>
+<dd><p>a copy of "first"</p></dd>
+<dt><p>out1 :</p></dt>
+<dd><p>a copy of "second"</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page
new file mode 100644
index 0000000..ec758d8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_get_fundamental_object"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>RegressTestFundamentalObject*</api:type>
+      </api:returns>
+      <api:name>regress_test_value_get_fundamental_object</api:name>
+      <api:arg>
+        <api:type>const GValue*</api:type>
+        <api:name>value</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_value_get_fundamental_object</title>
+  
+<synopsis><code mime="text/x-csrc">
+RegressTestFundamentalObject* regress_test_value_get_fundamental_object (const GValue* value);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>value :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page
new file mode 100644
index 0000000..bcdbed5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>const GValue*</api:type>
+      </api:returns>
+      <api:name>regress_test_value_return</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_value_return</title>
+  
+<synopsis><code mime="text/x-csrc">
+const GValue* regress_test_value_return (int i);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd><p>an int</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the int wrapped in a GValue.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page
new file mode 100644
index 0000000..101443e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_set_fundamental_object"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_value_set_fundamental_object</api:name>
+      <api:arg>
+        <api:type>GValue*</api:type>
+        <api:name>value</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>RegressTestFundamentalObject*</api:type>
+        <api:name>fundamental_object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>regress_test_value_set_fundamental_object</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_value_set_fundamental_object (GValue* value,
+                                                RegressTestFundamentalObject* fundamental_object);
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>value :</p></dt>
+<dd></dd>
+<dt><p>fundamental_object :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page
new file mode 100644
index 0000000..d426f0a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.test_versioning"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_versioning</api:name>
+    </api:function>
+
+  </info>
+  <title>regress_test_versioning</title>
+  
+<synopsis><code mime="text/x-csrc">
+void regress_test_versioning (void);
+</code></synopsis>
+
+  
+    
+  
+  
+    <p>Since 1.32.1</p>
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/doctool/DocExamples-1.0-C-expected/index.page b/tests/scanner/Regress-1.0-C-expected/index.page
similarity index 100%
rename from tests/doctool/DocExamples-1.0-C-expected/index.page
rename to tests/scanner/Regress-1.0-C-expected/index.page
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page
new file mode 100644
index 0000000..ebe71b0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_DEFINE"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_DEFINE</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_LARGE.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_LARGE.page
new file mode 100644
index 0000000..4b38cc0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_LARGE.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_LARGE"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_LARGE</title>
+  
+  
+  
+    <p>Constant to define a calculated large value</p>
+  
+  
+    <p>Since 1.4</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page
new file mode 100644
index 0000000..d6c8e76
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_LARGE_DIV"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_LARGE_DIV</title>
+  
+  
+  
+    <p>Constant to define a calculated large value</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page
new file mode 100644
index 0000000..dff139f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.ATestError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ATestError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ATestError.CODE0 :</p></dt>
+<dd></dd>
+<dt><p>ATestError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>ATestError.CODE2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page
new file mode 100644
index 0000000..2229245
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AliasedTestBoxed"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AliasedTestBoxed</title>
+  
+  
+  
+    <p>Typedef TestBoxed to test caller-allocates correctness</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page
new file mode 100644
index 0000000..8cbc832
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationBitfield"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationBitfield</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page
new file mode 100644
index 0000000..30f950c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationCallback</title>
+  
+  
+  
+    <p>This is a callback.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page
new file mode 100644
index 0000000..506ceff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationForeachFunc"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationForeachFunc</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page
new file mode 100644
index 0000000..3f9409e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationListCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationListCallback</title>
+  
+  
+  
+    <p>This is a callback taking a list.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page
new file mode 100644
index 0000000..b2dc717
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationNotifyFunc"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationNotifyFunc</title>
+  
+  
+  
+    <p>This is a callback with a 'closure' argument that is not named
+'user_data' and hence has to be annotated.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page
new file mode 100644
index 0000000..73f9cde
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-attribute-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">attribute-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::attribute-signal</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(annotation_object, arg1:String, arg2:String, user_param1, ...):String;
+</code></synopsis>
+
+  
+    <p>This signal tests a signal with attributes.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>arg1 :</p></dt>
+<dd><p>a value</p></dd>
+<dt><p>arg2 :</p></dt>
+<dd><p>another value</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>gchar* <p>the return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
new file mode 100644
index 0000000..178ce23
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-doc-empty-arg-parsing"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">doc-empty-arg-parsing</title>
+
+  </info>
+  <title>Regress.AnnotationObject::doc-empty-arg-parsing</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(annotation_object, arg1:gpointer, user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>This signal tests an empty document argument (<code>arg1</code>)</p>
+  
+  
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>arg1 :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page
new file mode 100644
index 0000000..f526ea9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-function-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">function-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:function-property</title>
+  
+<synopsis><code mime="text/x-python">
+"function-property"             Regress.AnnotationCallback                : Read / Write / Construct
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page
new file mode 100644
index 0000000..35d0edd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-list-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">list-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::list-signal</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(annotation_object, list:<list>, user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>This is a signal which takes a list of strings, but it's not
+known by GObject as it's only marked as G_TYPE_POINTER</p>
+  
+  
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>list :</p></dt>
+<dd><p>a list of strings</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page
new file mode 100644
index 0000000..b570a59
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-string-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">string-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:string-property</title>
+  
+<synopsis><code mime="text/x-python">
+"string-property"             String                : Read / Write / Construct
+</code></synopsis>
+
+  
+    <p>This is a property which is a string</p>
+  
+  
+    <p>Since 1.0</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page
new file mode 100644
index 0000000..d8e9f6a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-string-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">string-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::string-signal</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(annotation_object, string:String, user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>This is a signal which has a broken signal handler,
+it says it's pointer but it's actually a string.</p>
+  
+  
+    <p>Since 1.0</p>
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>string :</p></dt>
+<dd><p>a string</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page
new file mode 100644
index 0000000..e52a728
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-tab-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">tab-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:tab-property</title>
+  
+<synopsis><code mime="text/x-python">
+"tab-property"             String                : Read / Write / Construct
+</code></synopsis>
+
+  
+    <p>This is a property regress_annotation intentionally indented with a mix
+of tabs and strings to test the tab handling capabilities of the scanner.</p>
+  
+  
+    <p>Since 1.2</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page
new file mode 100644
index 0000000..c54f0c3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.allow_none"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_allow_none</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>somearg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.allow_none</title>
+  
+<synopsis><code mime="text/x-gjs">
+function allow_none(somearg:String):GObject.Object {
+    // Gjs wrapper for regress_annotation_object_allow_none()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>somearg :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>null</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page
new file mode 100644
index 0000000..a11fd19
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.calleeowns"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_calleeowns</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.calleeowns</title>
+  
+<synopsis><code mime="text/x-gjs">
+function calleeowns():Number {
+    // Gjs wrapper for regress_annotation_object_calleeowns()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments; GObject defaults to transfer</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page
new file mode 100644
index 0000000..df95d10
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.calleesowns"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_calleesowns</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.calleesowns</title>
+  
+<synopsis><code mime="text/x-gjs">
+function calleesowns():Number {
+    // Gjs wrapper for regress_annotation_object_calleesowns()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments, one transferred, other not</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page
new file mode 100644
index 0000000..5f93013
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.compute_sum</title>
+  
+<synopsis><code mime="text/x-gjs">
+function compute_sum(nums:[Number]):void {
+    // Gjs wrapper for regress_annotation_object_compute_sum()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array</p>
+  
+  
+  
+  
+<dl>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page
new file mode 100644
index 0000000..24e2a80
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum_n"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum_n</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.compute_sum_n</title>
+  
+<synopsis><code mime="text/x-gjs">
+function compute_sum_n(nums:[Number]):void {
+    // Gjs wrapper for regress_annotation_object_compute_sum_n()
+}
+</code></synopsis>
+
+  
+    <p>Test taking an array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers that are zero-terminated</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page
new file mode 100644
index 0000000..02c501d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum_nz"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum_nz</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.compute_sum_nz</title>
+  
+<synopsis><code mime="text/x-gjs">
+function compute_sum_nz(nums:[Number]):void {
+    // Gjs wrapper for regress_annotation_object_compute_sum_nz()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers that are zero-terminated</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page
new file mode 100644
index 0000000..4b2d104
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.create_object"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_create_object</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.create_object</title>
+  
+<synopsis><code mime="text/x-gjs">
+function create_object():GObject.Object {
+    // Gjs wrapper for regress_annotation_object_create_object()
+}
+</code></synopsis>
+
+  
+    <p>Test returning a caller-owned object</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page
new file mode 100644
index 0000000..87249cf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.do_not_use"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_do_not_use</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.do_not_use</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_not_use():GObject.Object {
+    // Gjs wrapper for regress_annotation_object_do_not_use()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p><code>null</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page
new file mode 100644
index 0000000..ba06aea
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.extra_annos"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_extra_annos</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.extra_annos</title>
+  
+<synopsis><code mime="text/x-gjs">
+function extra_annos():void {
+    // Gjs wrapper for regress_annotation_object_extra_annos()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page
new file mode 100644
index 0000000..965297e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.foreach"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_foreach</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.foreach</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foreach(func:Regress.AnnotationForeachFunc):void {
+    // Gjs wrapper for regress_annotation_object_foreach()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a call-scoped callback</p>
+  
+  
+  
+  
+<dl>
+<dt><p>func :</p></dt>
+<dd><p>Callback to invoke</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page
new file mode 100644
index 0000000..dbff0ad
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_hash"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: GObject.Object}</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_hash</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.get_hash</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_hash():{String: GObject.Object} {
+    // Gjs wrapper for regress_annotation_object_get_hash()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for returning a hash table mapping strings to
+objects.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>hash table</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page
new file mode 100644
index 0000000..4db2b5f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_objects"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_objects</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.get_objects</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_objects():<list> {
+    // Gjs wrapper for regress_annotation_object_get_objects()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for returning a list of objects.
+The list itself should be freed, but not the internal objects,
+intentionally similar example to gtk_container_get_children</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>list of objects</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page
new file mode 100644
index 0000000..f12734f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_strings"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_strings</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.get_strings</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_strings():<list> {
+    // Gjs wrapper for regress_annotation_object_get_strings()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for returning a list of strings, where
+each string needs to be freed.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>list of strings</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page
new file mode 100644
index 0000000..a59a446
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.hidden_self"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_hidden_self</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.hidden_self</title>
+  
+<synopsis><code mime="text/x-gjs">
+function hidden_self():void {
+    // Gjs wrapper for regress_annotation_object_hidden_self()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page
new file mode 100644
index 0000000..f9c8cae
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.in"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_in</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function in(inarg:Number):Number {
+    // Gjs wrapper for regress_annotation_object_in()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for in arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>inarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page
new file mode 100644
index 0000000..d2064f2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.inout</title>
+  
+<synopsis><code mime="text/x-gjs">
+function inout(inoutarg:Number):Number {
+    // Gjs wrapper for regress_annotation_object_inout()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page
new file mode 100644
index 0000000..a79e4d0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout2"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout2</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.inout2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function inout2(inoutarg:Number):Number {
+    // Gjs wrapper for regress_annotation_object_inout2()
+}
+</code></synopsis>
+
+  
+    <p>This is a second test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page
new file mode 100644
index 0000000..d421cbb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout3"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout3</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.inout3</title>
+  
+<synopsis><code mime="text/x-gjs">
+function inout3(inoutarg:Number):Number {
+    // Gjs wrapper for regress_annotation_object_inout3()
+}
+</code></synopsis>
+
+  
+    <p>This is a 3th test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page
new file mode 100644
index 0000000..93015f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_method</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function method():Number {
+    // Gjs wrapper for regress_annotation_object_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page
new file mode 100644
index 0000000..94f5173
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.notrans"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_notrans</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.notrans</title>
+  
+<synopsis><code mime="text/x-gjs">
+function notrans():GObject.Object {
+    // Gjs wrapper for regress_annotation_object_notrans()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An object, not referenced</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page
new file mode 100644
index 0000000..227eacc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_out</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function out():Number {
+    // Gjs wrapper for regress_annotation_object_out()
+}
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page
new file mode 100644
index 0000000..8bcae31
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+annotation_object = Regress.AnnotationObject(<link xref='Regress.AnnotationObject-function-property'>function_property</link>=value, <link xref='Regress.AnnotationObject-string-property'>string_property</link>=value, <link xref='Regress.AnnotationObject-tab-property'>tab_property</link>=value)  </code></synopsis>
+
+  
+    <p>This is an object used to test regress_annotations.</p>
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.AnnotationObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page
new file mode 100644
index 0000000..6940eca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.parse_args"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_parse_args</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>argv</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.parse_args</title>
+  
+<synopsis><code mime="text/x-gjs">
+function parse_args(argv:[String]):void {
+    // Gjs wrapper for regress_annotation_object_parse_args()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>argv :</p></dt>
+<dd><p>Argument vector</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page
new file mode 100644
index 0000000..6912c99
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data</api:name>
+      <api:arg>
+        <api:type>[guint8]</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.set_data</title>
+  
+<synopsis><code mime="text/x-gjs">
+function set_data(data:[guint8]):void {
+    // Gjs wrapper for regress_annotation_object_set_data()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a guchar * with a length.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page
new file mode 100644
index 0000000..68185d5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data2"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data2</api:name>
+      <api:arg>
+        <api:type>[gint8]</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.set_data2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function set_data2(data:[gint8]):void {
+    // Gjs wrapper for regress_annotation_object_set_data2()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a gchar * with a length.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page
new file mode 100644
index 0000000..62dcf83
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data3"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data3</api:name>
+      <api:arg>
+        <api:type>[guint8]</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.set_data3</title>
+  
+<synopsis><code mime="text/x-gjs">
+function set_data3(data:[guint8]):void {
+    // Gjs wrapper for regress_annotation_object_set_data3()
+}
+</code></synopsis>
+
+  
+    <p>Test taking a gchar * with a length, overriding the array element
+type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page
new file mode 100644
index 0000000..91f1252
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.string_out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_string_out</api:name>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.string_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function string_out():Boolean {
+    // Gjs wrapper for regress_annotation_object_string_out()
+}
+</code></synopsis>
+
+  
+    <p>Test returning a string as an out parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>some boolean</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page
new file mode 100644
index 0000000..1d61e1d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.use_buffer"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_use_buffer</api:name>
+      <api:arg>
+        <api:type>guint8</api:type>
+        <api:name>bytes</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.use_buffer</title>
+  
+<synopsis><code mime="text/x-gjs">
+function use_buffer(bytes:guint8):void {
+    // Gjs wrapper for regress_annotation_object_use_buffer()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>bytes :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch.page
new file mode 100644
index 0000000..085bf0a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.watch"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_watch</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.watch</title>
+  
+<synopsis><code mime="text/x-gjs">
+function watch(func:Regress.AnnotationForeachFunc):void {
+    // Gjs wrapper for regress_annotation_object_watch()
+}
+</code></synopsis>
+
+  
+    <p>This is here just for the sake of being overriden by its
+<link xref="Regress.AnnotationObject.watch_full"/>.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>func :</p></dt>
+<dd><p>The callback</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page
new file mode 100644
index 0000000..3fa6deb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.watch_full"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_watch_full</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.watch_full</title>
+  
+<synopsis><code mime="text/x-gjs">
+function watch_full(func:Regress.AnnotationForeachFunc):void {
+    // Gjs wrapper for regress_annotation_object_watch_full()
+}
+</code></synopsis>
+
+  
+    <p>Test overriding via the "Rename To" regress_annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>func :</p></dt>
+<dd><p>The callback</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page
new file mode 100644
index 0000000..5b0e46a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.with_voidp"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_with_voidp</api:name>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.prototype.with_voidp</title>
+  
+<synopsis><code mime="text/x-gjs">
+function with_voidp(data:gpointer):void {
+    // Gjs wrapper for regress_annotation_object_with_voidp()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>Opaque pointer handle</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page
new file mode 100644
index 0000000..edc9fd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationStruct</title>
+  
+  
+  
+    <p>This is a test of an array of object in an field of a struct.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.DOUBLE_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.DOUBLE_CONSTANT.page
new file mode 100644
index 0000000..b1aa32d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.DOUBLE_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.DOUBLE_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.DOUBLE_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page
new file mode 100644
index 0000000..357665d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_DEFINE_SHOULD_BE_EXPOSED"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_DEFINE_SHOULD_BE_EXPOSED</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_PIE_IS_TASTY.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_PIE_IS_TASTY.page
new file mode 100644
index 0000000..7dc308a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_PIE_IS_TASTY.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_PIE_IS_TASTY"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_PIE_IS_TASTY</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_SUCCESS_INT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_SUCCESS_INT.page
new file mode 100644
index 0000000..f20f426
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FOO_SUCCESS_INT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_SUCCESS_INT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_SUCCESS_INT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page
new file mode 100644
index 0000000..34f1ed7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.FooASingle"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooASingle</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooASingle.FOO_SOME_SINGLE_ENUM :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page
new file mode 100644
index 0000000..2dafde0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooAddressType"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooAddressType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooAddressType.INVALID :</p></dt>
+<dd></dd>
+<dt><p>FooAddressType.IPV4 :</p></dt>
+<dd></dd>
+<dt><p>FooAddressType.IPV6 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page
new file mode 100644
index 0000000..f46e101
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect.add"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBRect" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_brect_add</api:name>
+      <api:arg>
+        <api:type>Regress.FooBRect</api:type>
+        <api:name>b2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooBRect.prototype.add</title>
+  
+<synopsis><code mime="text/x-gjs">
+function add(b2:Regress.FooBRect):void {
+    // Gjs wrapper for regress_foo_brect_add()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>b2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page
new file mode 100644
index 0000000..66972b0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBRect" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooBRect</api:type>
+      </api:returns>
+      <api:name>regress_foo_brect_new</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooBRect.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new(x:Number, y:Number):Regress.FooBRect {
+    // Gjs wrapper for regress_foo_brect_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page
new file mode 100644
index 0000000..57e2652
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBRect</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page
new file mode 100644
index 0000000..63831e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBUnion"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBUnion</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page
new file mode 100644
index 0000000..447c991
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_boxed_method</api:name>
+    </api:function>
+
+  </info>
+  <title>FooBoxed.prototype.method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function method():void {
+    // Gjs wrapper for regress_foo_boxed_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page
new file mode 100644
index 0000000..edad8cd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooBoxed</api:type>
+      </api:returns>
+      <api:name>regress_foo_boxed_new</api:name>
+    </api:function>
+
+  </info>
+  <title>FooBoxed.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.FooBoxed {
+    // Gjs wrapper for regress_foo_boxed_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page
new file mode 100644
index 0000000..962300f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBoxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page
new file mode 100644
index 0000000..a3b5101
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBuffer"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBuffer</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_buffer = Regress.FooBuffer()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      <item>
+        <code>Regress.FooBuffer</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page
new file mode 100644
index 0000000..2a25e79
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBuffer.some_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBuffer" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_buffer_some_method</api:name>
+    </api:function>
+
+  </info>
+  <title>FooBuffer.prototype.some_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function some_method():void {
+    // Gjs wrapper for regress_foo_buffer_some_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page
new file mode 100644
index 0000000..241296e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page
new file mode 100644
index 0000000..bbcd055
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooDBusData.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooDBusData" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_dbus_data_method</api:name>
+    </api:function>
+
+  </info>
+  <title>FooDBusData.prototype.method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function method():void {
+    // Gjs wrapper for regress_foo_dbus_data_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page
new file mode 100644
index 0000000..08ad0d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooDBusData"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooDBusData</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page
new file mode 100644
index 0000000..a46070d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumFullname"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumFullname</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooEnumFullname.ONE :</p></dt>
+<dd></dd>
+<dt><p>FooEnumFullname.TWO :</p></dt>
+<dd></dd>
+<dt><p>FooEnumFullname.THREE :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page
new file mode 100644
index 0000000..2313192
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumNoType"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumNoType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooEnumNoType.UN :</p></dt>
+<dd></dd>
+<dt><p>FooEnumNoType.DEUX :</p></dt>
+<dd></dd>
+<dt><p>FooEnumNoType.TROIS :</p></dt>
+<dd></dd>
+<dt><p>FooEnumNoType.NEUF :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page
new file mode 100644
index 0000000..37510f5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumType"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooEnumType.ALPHA :</p></dt>
+<dd></dd>
+<dt><p>FooEnumType.BETA :</p></dt>
+<dd></dd>
+<dt><p>FooEnumType.DELTA :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page
new file mode 100644
index 0000000..0877e7c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooError.GOOD :</p></dt>
+<dd></dd>
+<dt><p>FooError.BAD :</p></dt>
+<dd></dd>
+<dt><p>FooError.UGLY :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page
new file mode 100644
index 0000000..0b77bcb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEvent"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEvent</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page
new file mode 100644
index 0000000..45cd3a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEventAny"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEventAny</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page
new file mode 100644
index 0000000..7e9ca7d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEventExpose"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEventExpose</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page
new file mode 100644
index 0000000..d4db757
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooFlagsNoType"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooFlagsNoType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page
new file mode 100644
index 0000000..e4f3ede
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooFlagsType"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooFlagsType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page
new file mode 100644
index 0000000..9a3af8c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooForeignStruct" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooForeignStruct</api:type>
+      </api:returns>
+      <api:name>regress_foo_foreign_struct_copy</api:name>
+    </api:function>
+
+  </info>
+  <title>FooForeignStruct.prototype.copy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function copy():Regress.FooForeignStruct {
+    // Gjs wrapper for regress_foo_foreign_struct_copy()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page
new file mode 100644
index 0000000..3f9478a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooForeignStruct" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooForeignStruct</api:type>
+      </api:returns>
+      <api:name>regress_foo_foreign_struct_new</api:name>
+    </api:function>
+
+  </info>
+  <title>FooForeignStruct.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.FooForeignStruct {
+    // Gjs wrapper for regress_foo_foreign_struct_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page
new file mode 100644
index 0000000..06c5793
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooForeignStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page
new file mode 100644
index 0000000..0148788
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface-do_regress_foo"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooInterface::do_regress_foo</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_do_regress_foo(x:Number):void {
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page
new file mode 100644
index 0000000..96cbe49
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface.do_regress_foo"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_interface_do_regress_foo</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooInterface.prototype.do_regress_foo</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_regress_foo(x:Number):void {
+    // Gjs wrapper for regress_foo_interface_do_regress_foo()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page
new file mode 100644
index 0000000..a195bb8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooInterface</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_interface = Regress.FooInterface()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.FooInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page
new file mode 100644
index 0000000..ff89098
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_interface_static_method</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>static_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function static_method(x:Number):void {
+    // Gjs wrapper for regress_foo_interface_static_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-hidden.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-hidden.page
new file mode 100644
index 0000000..b751ddb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-hidden.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-hidden"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">hidden</title>
+
+  </info>
+  <title>Regress.FooObject:hidden</title>
+  
+<synopsis><code mime="text/x-python">
+"hidden"             None                : Read / Write / Construct Only
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page
new file mode 100644
index 0000000..9c7b8ee
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-read_fn"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject::read_fn</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_read_fn(offset:Number, length:Number):void {
+}
+</code></synopsis>
+
+  
+    <p>Read some stuff.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>offset :</p></dt>
+<dd><p>offset</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>length</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page
new file mode 100644
index 0000000..96617ab
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="signal"/>
+    <title type="link" role="topic">signal</title>
+
+  </info>
+  <title>Regress.FooObject::signal</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(foo_object, object:GObject.Object, p0:gpointer, user_param1, ...):String;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo_object :</p></dt>
+<dd><p>instance of Regress.FooObject that is emitting the signal</p></dd>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>p0 :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>gchar* </dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page
new file mode 100644
index 0000000..d86283d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-string"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">string</title>
+
+  </info>
+  <title>Regress.FooObject:string</title>
+  
+<synopsis><code mime="text/x-python">
+"string"             String                : Read / Write / Construct
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page
new file mode 100644
index 0000000..0608ce1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-virtual_method"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject::virtual_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_virtual_method(first_param:Number):Boolean {
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>first_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page
new file mode 100644
index 0000000..ddc25bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.a_global_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_a_global_method</api:name>
+      <api:arg>
+        <api:type>Utility.Object</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>a_global_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function a_global_method(obj:Utility.Object):void {
+    // Gjs wrapper for regress_foo_object_a_global_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page
new file mode 100644
index 0000000..6929812
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.append_new_stack_layer"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooOtherObject</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_append_new_stack_layer</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.append_new_stack_layer</title>
+  
+<synopsis><code mime="text/x-gjs">
+function append_new_stack_layer(x:Number):Regress.FooOtherObject {
+    // Gjs wrapper for regress_foo_object_append_new_stack_layer()
+}
+</code></synopsis>
+
+  
+    <p>This shouldn't be scanned as a constructor.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page
new file mode 100644
index 0000000..078402a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.dup_name"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_dup_name</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.dup_name</title>
+  
+<synopsis><code mime="text/x-gjs">
+function dup_name():String {
+    // Gjs wrapper for regress_foo_object_dup_name()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page
new file mode 100644
index 0000000..9b037de
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.external_type"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Utility.Object</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_external_type</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.external_type</title>
+  
+<synopsis><code mime="text/x-gjs">
+function external_type():Utility.Object {
+    // Gjs wrapper for regress_foo_object_external_type()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p><code>null</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page
new file mode 100644
index 0000000..733048b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.get_default"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooSubobject</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_get_default</api:name>
+    </api:function>
+
+  </info>
+  <title>get_default</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_default():Regress.FooSubobject {
+    // Gjs wrapper for regress_foo_object_get_default()
+}
+</code></synopsis>
+
+  
+    <p>This function is intended to match clutter_stage_get_default which
+uses a C sugar return type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The global <link xref="Regress.FooSubobject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page
new file mode 100644
index 0000000..175cfd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.get_name"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_get_name</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.get_name</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_name():String {
+    // Gjs wrapper for regress_foo_object_get_name()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page
new file mode 100644
index 0000000..ecc5f33
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.handle_glyph"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_handle_glyph</api:name>
+      <api:arg>
+        <api:type>Utility.Glyph</api:type>
+        <api:name>glyph</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.handle_glyph</title>
+  
+<synopsis><code mime="text/x-gjs">
+function handle_glyph(glyph:Utility.Glyph):void {
+    // Gjs wrapper for regress_foo_object_handle_glyph()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>glyph :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page
new file mode 100644
index 0000000..cf8374c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.is_it_time_yet"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_is_it_time_yet</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>time</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.is_it_time_yet</title>
+  
+<synopsis><code mime="text/x-gjs">
+function is_it_time_yet(time:Number):void {
+    // Gjs wrapper for regress_foo_object_is_it_time_yet()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>time :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page
new file mode 100644
index 0000000..ed35761
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooObject</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.FooObject {
+    // Gjs wrapper for regress_foo_object_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page
new file mode 100644
index 0000000..295cb68
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new_as_super"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new_as_super</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.new_as_super</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_as_super():GObject.Object {
+    // Gjs wrapper for regress_foo_object_new_as_super()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_cookie.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_cookie.page
new file mode 100644
index 0000000..71c12ff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_cookie.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new_cookie"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooObjectCookie</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new_cookie</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>target</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.new_cookie</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_cookie(target:String):Regress.FooObjectCookie {
+    // Gjs wrapper for regress_foo_object_new_cookie()
+}
+</code></synopsis>
+
+  
+    <p>Not sure why this test is here...</p>
+  
+  
+  
+  
+<dl>
+<dt><p>target :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page
new file mode 100644
index 0000000..6a0810e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_object = Regress.FooObject(<link xref='Regress.FooObject-hidden'>hidden</link>=value, <link xref='Regress.FooObject-string'>string</link>=value)  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page
new file mode 100644
index 0000000..a348b66
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.read"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_read</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>offset</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.read</title>
+  
+<synopsis><code mime="text/x-gjs">
+function read(offset:Number, length:Number):void {
+    // Gjs wrapper for regress_foo_object_read()
+}
+</code></synopsis>
+
+  
+    <p>Read some stuff.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>offset :</p></dt>
+<dd><p>offset</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>length</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.skipped_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.skipped_method.page
new file mode 100644
index 0000000..b60c677
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.skipped_method.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.skipped_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_skipped_method</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.skipped_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function skipped_method():void {
+    // Gjs wrapper for regress_foo_object_skipped_method()
+}
+</code></synopsis>
+
+  
+    <p>This is only useful from C.</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page
new file mode 100644
index 0000000..b9c4f20
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.static_meth"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_static_meth</api:name>
+    </api:function>
+
+  </info>
+  <title>static_meth</title>
+  
+<synopsis><code mime="text/x-gjs">
+function static_meth():Number {
+    // Gjs wrapper for regress_foo_object_static_meth()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.take_all.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.take_all.page
new file mode 100644
index 0000000..35c2a7e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.take_all.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.take_all"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_take_all</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:varargs/>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.take_all</title>
+  
+<synopsis><code mime="text/x-gjs">
+function take_all(x:Number, None:<varargs>):void {
+    // Gjs wrapper for regress_foo_object_take_all()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>None :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page
new file mode 100644
index 0000000..cbe3744
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.various"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_various</api:name>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GType</api:type>
+        <api:name>some_type</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.various</title>
+  
+<synopsis><code mime="text/x-gjs">
+function various(data:gpointer, some_type:GType):void {
+    // Gjs wrapper for regress_foo_object_various()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>some_type :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page
new file mode 100644
index 0000000..fede11b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.virtual_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_virtual_method</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>first_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.prototype.virtual_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function virtual_method(first_param:Number):Boolean {
+    // Gjs wrapper for regress_foo_object_virtual_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>first_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page
new file mode 100644
index 0000000..4d9cabc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObjectCookie"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObjectCookie</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page
new file mode 100644
index 0000000..56e0fcb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.FooOtherObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooOtherObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_other_object = Regress.FooOtherObject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooOtherObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page
new file mode 100644
index 0000000..1fcc81b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle.add"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooRectangle" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_rectangle_add</api:name>
+      <api:arg>
+        <api:type>Regress.FooRectangle</api:type>
+        <api:name>r2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooRectangle.prototype.add</title>
+  
+<synopsis><code mime="text/x-gjs">
+function add(r2:Regress.FooRectangle):void {
+    // Gjs wrapper for regress_foo_rectangle_add()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>r2 :</p></dt>
+<dd><p>source rectangle</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.new.page
new file mode 100644
index 0000000..80a242d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.new.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle.new"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooRectangle" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooRectangle</api:type>
+      </api:returns>
+      <api:name>regress_foo_rectangle_new</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>width</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>height</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new(x:Number, y:Number, width:Number, height:Number):Regress.FooRectangle {
+    // Gjs wrapper for regress_foo_rectangle_new()
+}
+</code></synopsis>
+
+  
+    <p>This is a C convenience constructor; we have to (skip)
+it because it's not a boxed type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>width :</p></dt>
+<dd></dd>
+<dt><p>height :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page
new file mode 100644
index 0000000..521a68b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooRectangle</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSkippable.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSkippable.page
new file mode 100644
index 0000000..605ccf5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSkippable.page
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSkippable"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSkippable</title>
+  
+  
+  
+    <p>Some type that is only interesting from C and should not be
+exposed to language bindings.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>FooSkippable.ONE :</p></dt>
+<dd><p>a skippable enum value</p></dd>
+<dt><p>FooSkippable.TWO :</p></dt>
+<dd><p>another skippable enum value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page
new file mode 100644
index 0000000..83ca6a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooStackLayer"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooStackLayer</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooStackLayer.DESKTOP :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.BOTTOM :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.NORMAL :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.TOP :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.DOCK :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.FULLSCREEN :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.FOCUSED_WINDOW :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.OVERRIDE_REDIRECT :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.LAST :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page
new file mode 100644
index 0000000..4088a6c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page
new file mode 100644
index 0000000..f73adeb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-destroy-event"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="signal"/>
+    <title type="link" role="topic">destroy-event</title>
+
+  </info>
+  <title>Regress.FooSubInterface::destroy-event</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(foo_sub_interface, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo_sub_interface :</p></dt>
+<dd><p>instance of Regress.FooSubInterface that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page
new file mode 100644
index 0000000..caa25fe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-destroy_event"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface::destroy_event</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_destroy_event():void {
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page
new file mode 100644
index 0000000..f3dbed5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-do_bar"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface::do_bar</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_do_bar():void {
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page
new file mode 100644
index 0000000..59e09b4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-do_baz"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface::do_baz</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_do_baz(callback:GObject.Callback):void {
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page
new file mode 100644
index 0000000..e31cf57
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface.do_bar"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_sub_interface_do_bar</api:name>
+    </api:function>
+
+  </info>
+  <title>FooSubInterface.prototype.do_bar</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_bar():void {
+    // Gjs wrapper for regress_foo_sub_interface_do_bar()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page
new file mode 100644
index 0000000..e075186
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface.do_baz"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_sub_interface_do_baz</api:name>
+      <api:arg>
+        <api:type>GObject.Callback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooSubInterface.prototype.do_baz</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_baz(callback:GObject.Callback):void {
+    // Gjs wrapper for regress_foo_sub_interface_do_baz()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page
new file mode 100644
index 0000000..3b09372
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_sub_interface = Regress.FooSubInterface()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.FooSubInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page
new file mode 100644
index 0000000..a2a244f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubobject.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubobject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooSubobject</api:type>
+      </api:returns>
+      <api:name>regress_foo_subobject_new</api:name>
+    </api:function>
+
+  </info>
+  <title>FooSubobject.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.FooSubobject {
+    // Gjs wrapper for regress_foo_subobject_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page
new file mode 100644
index 0000000..f3a8b6d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubobject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubobject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_subobject = Regress.FooSubobject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      <item>
+        <code>Regress.FooSubobject</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page
new file mode 100644
index 0000000..7ae6ae5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooThingWithArray"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooThingWithArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page
new file mode 100644
index 0000000..06d2e80
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooUnion"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooUnion</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page
new file mode 100644
index 0000000..0471b87
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooUtilityStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooUtilityStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooVarargsCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooVarargsCallback.page
new file mode 100644
index 0000000..d477638
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooVarargsCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooVarargsCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooVarargsCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page
new file mode 100644
index 0000000..1812249
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooXEvent"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooXEvent</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.GUINT64_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.GUINT64_CONSTANT.page
new file mode 100644
index 0000000..9a0cd16
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.GUINT64_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.GUINT64_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.GUINT64_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.GUINT64_CONSTANTA.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.GUINT64_CONSTANTA.page
new file mode 100644
index 0000000..4faf765
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.GUINT64_CONSTANTA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.GUINT64_CONSTANTA"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.GUINT64_CONSTANTA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.G_GINT64_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.G_GINT64_CONSTANT.page
new file mode 100644
index 0000000..b4a66f6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.G_GINT64_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.G_GINT64_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.G_GINT64_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.INT_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.INT_CONSTANT.page
new file mode 100644
index 0000000..e4df9a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.INT_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.INT_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.INT_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.IntSet.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.IntSet.page
new file mode 100644
index 0000000..e285bc2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.IntSet.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.IntSet"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.IntSet</title>
+  
+  
+  
+    <p>Compatibility typedef, like telepathy-glib's TpIntSet</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.LONG_STRING_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.LONG_STRING_CONSTANT.page
new file mode 100644
index 0000000..3c0409a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.LONG_STRING_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.LONG_STRING_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.LONG_STRING_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page
new file mode 100644
index 0000000..05362e5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.LikeGnomeKeyringPasswordSchema"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.LikeGnomeKeyringPasswordSchema</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.MAXUINT64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.MAXUINT64.page
new file mode 100644
index 0000000..be1afd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.MAXUINT64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.MAXUINT64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.MAXUINT64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.MININT64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.MININT64.page
new file mode 100644
index 0000000..35c3e58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.MININT64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.MININT64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.MININT64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.Mixed_Case_Constant.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.Mixed_Case_Constant.page
new file mode 100644
index 0000000..5ea8d9b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.Mixed_Case_Constant.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.Mixed_Case_Constant"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.Mixed_Case_Constant</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.NEGATIVE_INT_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.NEGATIVE_INT_CONSTANT.page
new file mode 100644
index 0000000..576c690
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.NEGATIVE_INT_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.NEGATIVE_INT_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.NEGATIVE_INT_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page
new file mode 100644
index 0000000..9af00b5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.PtrArrayAlias"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.PtrArrayAlias</title>
+  
+  
+  
+    <p>Typedef'd GPtrArray for some reason</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.STRING_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.STRING_CONSTANT.page
new file mode 100644
index 0000000..945ba98
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.STRING_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.STRING_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.STRING_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.SkippedStructure.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.SkippedStructure.page
new file mode 100644
index 0000000..2e67ac0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.SkippedStructure.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.SkippedStructure"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.SkippedStructure</title>
+  
+  
+  
+    <p>This should be skipped, and moreover, all function which
+use it should be.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page
new file mode 100644
index 0000000..fea8d58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestABCError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestABCError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestABCError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestABCError.CODE2 :</p></dt>
+<dd></dd>
+<dt><p>TestABCError.CODE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page
new file mode 100644
index 0000000..59c0701
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxed</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_copy</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.prototype.copy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function copy():Regress.TestBoxed {
+    // Gjs wrapper for regress_test_boxed_copy()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page
new file mode 100644
index 0000000..4a4f394
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.equals"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_equals</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxed</api:type>
+        <api:name>other</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.prototype.equals</title>
+  
+<synopsis><code mime="text/x-gjs">
+function equals(other:Regress.TestBoxed):Boolean {
+    // Gjs wrapper for regress_test_boxed_equals()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>other :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page
new file mode 100644
index 0000000..72921e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxed</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.TestBoxed {
+    // Gjs wrapper for regress_test_boxed_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page
new file mode 100644
index 0000000..72c866f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new_alternative_constructor1"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxed</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new_alternative_constructor1</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.new_alternative_constructor1</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_alternative_constructor1(i:Number):Regress.TestBoxed {
+    // Gjs wrapper for regress_test_boxed_new_alternative_constructor1()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page
new file mode 100644
index 0000000..e8e3cf9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new_alternative_constructor2"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxed</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new_alternative_constructor2</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>j</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.new_alternative_constructor2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_alternative_constructor2(i:Number, j:Number):Regress.TestBoxed {
+    // Gjs wrapper for regress_test_boxed_new_alternative_constructor2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>j :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page
new file mode 100644
index 0000000..1f51612
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.new_alternative_constructor3"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxed</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_new_alternative_constructor3</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>s</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.new_alternative_constructor3</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_alternative_constructor3(s:String):Regress.TestBoxed {
+    // Gjs wrapper for regress_test_boxed_new_alternative_constructor3()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>s :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page
new file mode 100644
index 0000000..c6792c5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page
new file mode 100644
index 0000000..6fb2b3b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedB</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_b_copy</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxedB.prototype.copy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function copy():Regress.TestBoxedB {
+    // Gjs wrapper for regress_test_boxed_b_copy()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page
new file mode 100644
index 0000000..dcf0105
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedB" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedB</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_b_new</api:name>
+      <api:arg>
+        <api:type>gint8</api:type>
+        <api:name>some_int8</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>some_long</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxedB.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new(some_int8:gint8, some_long:Number):Regress.TestBoxedB {
+    // Gjs wrapper for regress_test_boxed_b_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>some_int8 :</p></dt>
+<dd></dd>
+<dt><p>some_long :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page
new file mode 100644
index 0000000..46cf7c1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page
new file mode 100644
index 0000000..2475bae
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedC.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedC" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedC</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_c_new</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxedC.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.TestBoxedC {
+    // Gjs wrapper for regress_test_boxed_c_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page
new file mode 100644
index 0000000..88dd1a4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedC"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedC</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page
new file mode 100644
index 0000000..9b9e0ca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedD</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_copy</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.prototype.copy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function copy():Regress.TestBoxedD {
+    // Gjs wrapper for regress_test_boxed_d_copy()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page
new file mode 100644
index 0000000..1b96fd2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.free"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_free</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.prototype.free</title>
+  
+<synopsis><code mime="text/x-gjs">
+function free():void {
+    // Gjs wrapper for regress_test_boxed_d_free()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page
new file mode 100644
index 0000000..8b7bf9a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.get_magic"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_get_magic</api:name>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.prototype.get_magic</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_magic():Number {
+    // Gjs wrapper for regress_test_boxed_d_get_magic()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page
new file mode 100644
index 0000000..0568050
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedD</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_new</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>a_string</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a_int</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new(a_string:String, a_int:Number):Regress.TestBoxedD {
+    // Gjs wrapper for regress_test_boxed_d_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>a_string :</p></dt>
+<dd></dd>
+<dt><p>a_int :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page
new file mode 100644
index 0000000..17b3c79
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedD</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page
new file mode 100644
index 0000000..9a219e9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page
new file mode 100644
index 0000000..7ceb2e0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackArray"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page
new file mode 100644
index 0000000..3de1fbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackFull"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackFull</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page
new file mode 100644
index 0000000..1f6f2bd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackGError"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackGError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page
new file mode 100644
index 0000000..906947c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackHashtable"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackHashtable</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page
new file mode 100644
index 0000000..e7397a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackOwnedGError"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackOwnedGError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page
new file mode 100644
index 0000000..f3047cf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackUserData"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackUserData</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page
new file mode 100644
index 0000000..b6f0eb8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestDEFError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestDEFError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestDEFError.CODE0 :</p></dt>
+<dd></dd>
+<dt><p>TestDEFError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestDEFError.CODE2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page
new file mode 100644
index 0000000..3de1bbf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnum"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnum</title>
+  
+  
+  
+    <p>By purpose, not all members have documentation</p>
+  
+  
+  
+  
+<dl>
+<dt><p>TestEnum.VALUE1 :</p></dt>
+<dd><p>value 1</p></dd>
+<dt><p>TestEnum.VALUE2 :</p></dt>
+<dd><p>value 2</p></dd>
+<dt><p>TestEnum.VALUE3 :</p></dt>
+<dd></dd>
+<dt><p>TestEnum.VALUE4 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page
new file mode 100644
index 0000000..625c870
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnumNoGEnum"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnumNoGEnum</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestEnumNoGEnum.EVALUE1 :</p></dt>
+<dd></dd>
+<dt><p>TestEnumNoGEnum.EVALUE2 :</p></dt>
+<dd></dd>
+<dt><p>TestEnumNoGEnum.EVALUE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page
new file mode 100644
index 0000000..3069d8e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnumUnsigned"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnumUnsigned</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestEnumUnsigned.VALUE1 :</p></dt>
+<dd></dd>
+<dt><p>TestEnumUnsigned.VALUE2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page
new file mode 100644
index 0000000..57a2116
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestError.CODE2 :</p></dt>
+<dd></dd>
+<dt><p>TestError.CODE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page
new file mode 100644
index 0000000..d545197
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFlags"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFlags</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page
new file mode 100644
index 0000000..889f5d1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFloating.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFloating" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestFloating</api:type>
+      </api:returns>
+      <api:name>regress_test_floating_new</api:name>
+    </api:function>
+
+  </info>
+  <title>TestFloating.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.TestFloating {
+    // Gjs wrapper for regress_test_floating_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>A new floating <link xref="Regress.TestFloating"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page
new file mode 100644
index 0000000..4f1c323
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFloating"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFloating</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_floating = Regress.TestFloating()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>GObject.InitiallyUnowned</code>
+      <item>
+        <code>Regress.TestFloating</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page
new file mode 100644
index 0000000..ee5ea92
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_fundamental_object = Regress.TestFundamentalObject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestFundamentalObject</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page
new file mode 100644
index 0000000..c2c23f2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject.ref"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestFundamentalObject</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_object_ref</api:name>
+    </api:function>
+
+  </info>
+  <title>TestFundamentalObject.prototype.ref</title>
+  
+<synopsis><code mime="text/x-gjs">
+function ref():Regress.TestFundamentalObject {
+    // Gjs wrapper for regress_test_fundamental_object_ref()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>A new <link xref="Regress.TestFundamentalObject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page
new file mode 100644
index 0000000..efeb0c3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject.unref"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_object_unref</api:name>
+    </api:function>
+
+  </info>
+  <title>TestFundamentalObject.prototype.unref</title>
+  
+<synopsis><code mime="text/x-gjs">
+function unref():void {
+    // Gjs wrapper for regress_test_fundamental_object_unref()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page
new file mode 100644
index 0000000..dfd65ce
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectCopyFunction"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectCopyFunction</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page
new file mode 100644
index 0000000..2b9d965
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectFinalizeFunction"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectFinalizeFunction</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page
new file mode 100644
index 0000000..d9b958a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalSubObject.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalSubObject" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestFundamentalSubObject</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_sub_object_new</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestFundamentalSubObject.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new(data:String):Regress.TestFundamentalSubObject {
+    // Gjs wrapper for regress_test_fundamental_sub_object_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page
new file mode 100644
index 0000000..1418f6f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalSubObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalSubObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_fundamental_sub_object = Regress.TestFundamentalSubObject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestFundamentalObject</code>
+      <item>
+        <code>Regress.TestFundamentalSubObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page
new file mode 100644
index 0000000..11c8730
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.do_foo"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_do_foo</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.prototype.do_foo</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_foo(x:Number):void {
+    // Gjs wrapper for regress_test_inherit_drawable_do_foo()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
new file mode 100644
index 0000000..0591726
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.do_foo_maybe_throw"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_do_foo_maybe_throw</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.prototype.do_foo_maybe_throw</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_foo_maybe_throw(x:Number):void {
+    // Gjs wrapper for regress_test_inherit_drawable_do_foo_maybe_throw()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page
new file mode 100644
index 0000000..0c87efc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.get_origin"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_get_origin</api:name>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.prototype.get_origin</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_origin():void {
+    // Gjs wrapper for regress_test_inherit_drawable_get_origin()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page
new file mode 100644
index 0000000..0fb936c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.get_size"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_get_size</api:name>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.prototype.get_size</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_size():void {
+    // Gjs wrapper for regress_test_inherit_drawable_get_size()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page
new file mode 100644
index 0000000..e562289
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritDrawable</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_inherit_drawable = Regress.TestInheritDrawable()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestInheritDrawable</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page
new file mode 100644
index 0000000..deaeea5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritPixmapObjectClass"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritPixmapObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page
new file mode 100644
index 0000000..09c9898
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInterface</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_interface = Regress.TestInterface()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page
new file mode 100644
index 0000000..32565ee
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-all"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">all</title>
+
+  </info>
+  <title>Regress.TestObj::all</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page
new file mode 100644
index 0000000..f16bc29
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-allow_none_vfunc"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj::allow_none_vfunc</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_allow_none_vfunc(two:Regress.TestObj):void {
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>two :</p></dt>
+<dd><p>Another object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page
new file mode 100644
index 0000000..97c7ee6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-bare"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">bare</title>
+
+  </info>
+  <title>Regress.TestObj:bare</title>
+  
+<synopsis><code mime="text/x-python">
+"bare"             GObject.Object                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page
new file mode 100644
index 0000000..e870627
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-boxed"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">boxed</title>
+
+  </info>
+  <title>Regress.TestObj:boxed</title>
+  
+<synopsis><code mime="text/x-python">
+"boxed"             Regress.TestBoxed                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page
new file mode 100644
index 0000000..b9938f6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-cleanup"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">cleanup</title>
+
+  </info>
+  <title>Regress.TestObj::cleanup</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page
new file mode 100644
index 0000000..df73505
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-double"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">double</title>
+
+  </info>
+  <title>Regress.TestObj:double</title>
+  
+<synopsis><code mime="text/x-python">
+"double"             Number                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page
new file mode 100644
index 0000000..ff33157
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-first"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">first</title>
+
+  </info>
+  <title>Regress.TestObj::first</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page
new file mode 100644
index 0000000..ea02ac2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-float"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">float</title>
+
+  </info>
+  <title>Regress.TestObj:float</title>
+  
+<synopsis><code mime="text/x-python">
+"float"             Number                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page
new file mode 100644
index 0000000..b477bed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-gtype"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">gtype</title>
+
+  </info>
+  <title>Regress.TestObj:gtype</title>
+  
+<synopsis><code mime="text/x-python">
+"gtype"             GType                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page
new file mode 100644
index 0000000..ca81a39
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-hash-table-old"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">hash-table-old</title>
+
+  </info>
+  <title>Regress.TestObj:hash-table-old</title>
+  
+<synopsis><code mime="text/x-python">
+"hash-table-old"             {String: gint8}                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page
new file mode 100644
index 0000000..abd64ea
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-hash-table"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">hash-table</title>
+
+  </info>
+  <title>Regress.TestObj:hash-table</title>
+  
+<synopsis><code mime="text/x-python">
+"hash-table"             {String: gint8}                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page
new file mode 100644
index 0000000..8865234
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-int"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">int</title>
+
+  </info>
+  <title>Regress.TestObj:int</title>
+  
+<synopsis><code mime="text/x-python">
+"int"             Number                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page
new file mode 100644
index 0000000..fe82188
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-list-old"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">list-old</title>
+
+  </info>
+  <title>Regress.TestObj:list-old</title>
+  
+<synopsis><code mime="text/x-python">
+"list-old"             <list>                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page
new file mode 100644
index 0000000..30d452d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-list"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">list</title>
+
+  </info>
+  <title>Regress.TestObj:list</title>
+  
+<synopsis><code mime="text/x-python">
+"list"             <list>                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page
new file mode 100644
index 0000000..4133baa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-matrix"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj::matrix</title>
+  
+<synopsis><code mime="text/x-gjs">
+function vfunc_matrix(somestr:String):Number {
+}
+</code></synopsis>
+
+  
+    <p>This method is virtual.  Notably its name differs from the virtual
+slot name, which makes it useful for testing bindings handle this
+case.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>somestr :</p></dt>
+<dd><p>Meaningless string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page
new file mode 100644
index 0000000..d966ae2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-array-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-array-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-array-prop</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, arr:[Number], user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>This test signal is like TelepathyGlib's
+ TpChannel:: group-members-changed-detailed:</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>arr :</p></dt>
+<dd><p>numbers</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page
new file mode 100644
index 0000000..8ffd0af
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-foreign-struct"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-foreign-struct</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-foreign-struct</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, cr:cairo.Context, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>cr :</p></dt>
+<dd><p>A cairo context.</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page
new file mode 100644
index 0000000..154181c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-hash-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-hash-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-hash-prop</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, hash:{String: GObject.Value}, user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>This test signal is like TelepathyGlib's
+ TpAccount::status-changed</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>hash :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page
new file mode 100644
index 0000000..beebb08
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-int64-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-int64-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-int64-prop</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, i:Number, user_param1, ...):Number;
+</code></synopsis>
+
+  
+    <p>You can use this with regress_test_obj_emit_sig_with_int64, or raise from
+the introspection client langage.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>gint64 </dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page
new file mode 100644
index 0000000..cad3093
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-intarray-ret"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-intarray-ret</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-intarray-ret</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, i:Number, user_param1, ...):[Number];
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page
new file mode 100644
index 0000000..c56e793
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-obj"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-obj</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-obj</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, obj:GObject.Object, user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>Test transfer none GObject as a param (tests refcounting).
+Use with regress_test_obj_emit_sig_with_obj</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>obj :</p></dt>
+<dd><p>A newly created RegressTestObj</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page
new file mode 100644
index 0000000..9f4461d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-strv"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-strv</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-strv</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, strs:[String], user_param1, ...):void;
+</code></synopsis>
+
+  
+    <p>Test GStrv as a param.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>strs :</p></dt>
+<dd><p>strings</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page
new file mode 100644
index 0000000..870aefa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-uint64-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-uint64-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-uint64-prop</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, i:Number, user_param1, ...):Number;
+</code></synopsis>
+
+  
+    <p>You can use this with regress_test_obj_emit_sig_with_uint64, or raise from
+the introspection client langage.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>guint64 </dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page
new file mode 100644
index 0000000..13f2b4b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-string"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">string</title>
+
+  </info>
+  <title>Regress.TestObj:string</title>
+  
+<synopsis><code mime="text/x-python">
+"string"             String                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page
new file mode 100644
index 0000000..ee0ed94
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-test-with-static-scope-arg"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">test-with-static-scope-arg</title>
+
+  </info>
+  <title>Regress.TestObj::test-with-static-scope-arg</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, object:Regress.TestSimpleBoxedA, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page
new file mode 100644
index 0000000..6180999
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-test"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">test</title>
+
+  </info>
+  <title>Regress.TestObj::test</title>
+  
+<synopsis><code mime="text/x-python">
+function callback(test_obj, user_param1, ...):void;
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page
new file mode 100644
index 0000000..b22362d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.constructor"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestObj</api:type>
+      </api:returns>
+      <api:name>regress_constructor</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.constructor</title>
+  
+<synopsis><code mime="text/x-gjs">
+function constructor():Regress.TestObj {
+    // Gjs wrapper for regress_constructor()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page
new file mode 100644
index 0000000..1d35e44
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.do_matrix"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_do_matrix</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>somestr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.do_matrix</title>
+  
+<synopsis><code mime="text/x-gjs">
+function do_matrix(somestr:String):Number {
+    // Gjs wrapper for regress_test_obj_do_matrix()
+}
+</code></synopsis>
+
+  
+    <p>This method is virtual.  Notably its name differs from the virtual
+slot name, which makes it useful for testing bindings handle this
+case.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>somestr :</p></dt>
+<dd><p>Meaningless string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
new file mode 100644
index 0000000..da6e8b2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_foreign_struct"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_foreign_struct</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.emit_sig_with_foreign_struct</title>
+  
+<synopsis><code mime="text/x-gjs">
+function emit_sig_with_foreign_struct():void {
+    // Gjs wrapper for regress_test_obj_emit_sig_with_foreign_struct()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page
new file mode 100644
index 0000000..4f54523
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_int64"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_int64</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.emit_sig_with_int64</title>
+  
+<synopsis><code mime="text/x-gjs">
+function emit_sig_with_int64():void {
+    // Gjs wrapper for regress_test_obj_emit_sig_with_int64()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page
new file mode 100644
index 0000000..1bdcd9c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_obj"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_obj</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.emit_sig_with_obj</title>
+  
+<synopsis><code mime="text/x-gjs">
+function emit_sig_with_obj():void {
+    // Gjs wrapper for regress_test_obj_emit_sig_with_obj()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page
new file mode 100644
index 0000000..06b4bf5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_uint64"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_uint64</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.emit_sig_with_uint64</title>
+  
+<synopsis><code mime="text/x-gjs">
+function emit_sig_with_uint64():void {
+    // Gjs wrapper for regress_test_obj_emit_sig_with_uint64()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page
new file mode 100644
index 0000000..abb6c63
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.forced_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_forced_method</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.forced_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function forced_method():void {
+    // Gjs wrapper for regress_forced_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page
new file mode 100644
index 0000000..aa90320
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.instance_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_instance_method</api:name>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.instance_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function instance_method():Number {
+    // Gjs wrapper for regress_test_obj_instance_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page
new file mode 100644
index 0000000..bd5ceaf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.instance_method_callback"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_instance_method_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.instance_method_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function instance_method_callback(callback:Regress.TestCallback):void {
+    // Gjs wrapper for regress_test_obj_instance_method_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page
new file mode 100644
index 0000000..a9df483
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestObj</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_new</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new(obj:Regress.TestObj):Regress.TestObj {
+    // Gjs wrapper for regress_test_obj_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page
new file mode 100644
index 0000000..1af9526
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.new_callback"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestObj</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_new_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.new_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_callback(callback:Regress.TestCallbackUserData):Regress.TestObj {
+    // Gjs wrapper for regress_test_obj_new_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page
new file mode 100644
index 0000000..c12559a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.new_from_file"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestObj</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_new_from_file</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.new_from_file</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new_from_file(x:String):Regress.TestObj {
+    // Gjs wrapper for regress_test_obj_new_from_file()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page
new file mode 100644
index 0000000..f194391
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_null_out</api:name>
+    </api:function>
+
+  </info>
+  <title>null_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function null_out():void {
+    // Gjs wrapper for regress_test_obj_null_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page
new file mode 100644
index 0000000..7ee950e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_obj = Regress.TestObj(<link xref='Regress.TestObj-bare'>bare</link>=value, <link xref='Regress.TestObj-boxed'>boxed</link>=value, <link xref='Regress.TestObj-double'>double</link>=value, <link xref='Regress.TestObj-float'>float</link>=value, <link xref='Regress.TestObj-gtype'>gtype</link>=value, <link xref='Regress.TestObj-hash-table'>hash_table</link>=value, <link xref='Regress.TestObj-hash-table-old'>hash_table_old</link>=value, <link xref='Regress.TestObj-int'>int</link>=value, <link xref='Regress.TestObj-list'>list</link>=value, <link xref='Regress.TestObj-list-old'>list_old</link>=value, <link xref='Regress.TestObj-string'>string</link>=value)  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestObj</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page
new file mode 100644
index 0000000..3a963ca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.set_bare"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_set_bare</api:name>
+      <api:arg>
+        <api:type>GObject.Object</api:type>
+        <api:name>bare</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.set_bare</title>
+  
+<synopsis><code mime="text/x-gjs">
+function set_bare(bare:GObject.Object):void {
+    // Gjs wrapper for regress_test_obj_set_bare()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>bare :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page
new file mode 100644
index 0000000..200835b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_inout_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_inout_param</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.skip_inout_param</title>
+  
+<synopsis><code mime="text/x-gjs">
+function skip_inout_param(a:Number, c:Number, inout_d:Number, num1:Number, num2:Number):Boolean {
+    // Gjs wrapper for regress_test_obj_skip_inout_param()
+}
+</code></synopsis>
+
+  
+    <p>Check that the out value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>true</code> if the call succeeds, <code>false</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page
new file mode 100644
index 0000000..7ee261d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_out_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_out_param</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.skip_out_param</title>
+  
+<synopsis><code mime="text/x-gjs">
+function skip_out_param(a:Number, c:Number, inout_d:Number, num1:Number, num2:Number):Boolean {
+    // Gjs wrapper for regress_test_obj_skip_out_param()
+}
+</code></synopsis>
+
+  
+    <p>Check that the out value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>true</code> if the call succeeds, <code>false</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page
new file mode 100644
index 0000000..8b5a6a7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_param</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.skip_param</title>
+  
+<synopsis><code mime="text/x-gjs">
+function skip_param(a:Number, c:Number, inout_d:Number, num1:Number, num2:Number):Boolean {
+    // Gjs wrapper for regress_test_obj_skip_param()
+}
+</code></synopsis>
+
+  
+    <p>Check that a parameter is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>true</code> if the call succeeds, <code>false</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page
new file mode 100644
index 0000000..e8aa83c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_return_val"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_return_val</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.skip_return_val</title>
+  
+<synopsis><code mime="text/x-gjs">
+function skip_return_val(a:Number, c:Number, inout_d:Number, num1:Number, num2:Number):Boolean {
+    // Gjs wrapper for regress_test_obj_skip_return_val()
+}
+</code></synopsis>
+
+  
+    <p>Check that the return value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>true</code> if the call succeeds, <code>false</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page
new file mode 100644
index 0000000..875164b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_return_val_no_out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_return_val_no_out</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.skip_return_val_no_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function skip_return_val_no_out(a:Number):Boolean {
+    // Gjs wrapper for regress_test_obj_skip_return_val_no_out()
+}
+</code></synopsis>
+
+  
+    <p>Check that the return value is skipped. Succeed if a is nonzero, otherwise
+raise an error.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>true</code> if the call succeeds, <code>false</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page
new file mode 100644
index 0000000..53cbdd2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_static_method</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>static_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function static_method(x:Number):Number {
+    // Gjs wrapper for regress_test_obj_static_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page
new file mode 100644
index 0000000..a2b3868
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.static_method_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_static_method_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>static_method_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function static_method_callback(callback:Regress.TestCallback):void {
+    // Gjs wrapper for regress_test_obj_static_method_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page
new file mode 100644
index 0000000..01f97d6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.torture_signature_0"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_torture_signature_0</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.torture_signature_0</title>
+  
+<synopsis><code mime="text/x-gjs">
+function torture_signature_0(x:Number, foo:String, m:Number):void {
+    // Gjs wrapper for regress_test_obj_torture_signature_0()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page
new file mode 100644
index 0000000..205b1a3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.torture_signature_1"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_torture_signature_1</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.prototype.torture_signature_1</title>
+  
+<synopsis><code mime="text/x-gjs">
+function torture_signature_1(x:Number, foo:String, m:Number):Boolean {
+    // Gjs wrapper for regress_test_obj_torture_signature_1()
+}
+</code></synopsis>
+
+  
+    <p>This function throws an error if m is odd.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page
new file mode 100644
index 0000000..1d907d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestOtherError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestOtherError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestOtherError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestOtherError.CODE2 :</p></dt>
+<dd></dd>
+<dt><p>TestOtherError.CODE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page
new file mode 100644
index 0000000..788441a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestPrivateEnum"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestPrivateEnum</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page
new file mode 100644
index 0000000..fa50813
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestPrivateStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestPrivateStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page
new file mode 100644
index 0000000..ab33fce
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.const_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_const_return</api:name>
+    </api:function>
+
+  </info>
+  <title>const_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function const_return():Regress.TestSimpleBoxedA {
+    // Gjs wrapper for regress_test_simple_boxed_a_const_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page
new file mode 100644
index 0000000..c455952
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_copy</api:name>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedA.prototype.copy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function copy():Regress.TestSimpleBoxedA {
+    // Gjs wrapper for regress_test_simple_boxed_a_copy()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page
new file mode 100644
index 0000000..de4ade8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.equals"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_equals</api:name>
+      <api:arg>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+        <api:name>other_a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedA.prototype.equals</title>
+  
+<synopsis><code mime="text/x-gjs">
+function equals(other_a:Regress.TestSimpleBoxedA):Boolean {
+    // Gjs wrapper for regress_test_simple_boxed_a_equals()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>other_a :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page
new file mode 100644
index 0000000..2a8dd62
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleBoxedA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page
new file mode 100644
index 0000000..695bed6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedB.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestSimpleBoxedB</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_b_copy</api:name>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedB.prototype.copy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function copy():Regress.TestSimpleBoxedB {
+    // Gjs wrapper for regress_test_simple_boxed_b_copy()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page
new file mode 100644
index 0000000..b775b86
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedB"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleBoxedB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page
new file mode 100644
index 0000000..61bafb5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page
new file mode 100644
index 0000000..8e50284
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA.clone"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_a_clone</api:name>
+    </api:function>
+
+  </info>
+  <title>TestStructA.prototype.clone</title>
+  
+<synopsis><code mime="text/x-gjs">
+function clone():void {
+    // Gjs wrapper for regress_test_struct_a_clone()
+}
+</code></synopsis>
+
+  
+    <p>Make a copy of a RegressTestStructA</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page
new file mode 100644
index 0000000..07b1752
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page
new file mode 100644
index 0000000..3577ad7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA.parse"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructA" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_a_parse</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>string</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>parse</title>
+  
+<synopsis><code mime="text/x-gjs">
+function parse(string:String):void {
+    // Gjs wrapper for regress_test_struct_a_parse()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>string :</p></dt>
+<dd><p>ignored</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page
new file mode 100644
index 0000000..ce72cfd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructB.clone"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_b_clone</api:name>
+    </api:function>
+
+  </info>
+  <title>TestStructB.prototype.clone</title>
+  
+<synopsis><code mime="text/x-gjs">
+function clone():void {
+    // Gjs wrapper for regress_test_struct_b_clone()
+}
+</code></synopsis>
+
+  
+    <p>Make a copy of a RegressTestStructB</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page
new file mode 100644
index 0000000..b5b2ff3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructB"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page
new file mode 100644
index 0000000..1db74ca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructC"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructC</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page
new file mode 100644
index 0000000..cf224e3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructD"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructD</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page
new file mode 100644
index 0000000..75684f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructE"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructE</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page
new file mode 100644
index 0000000..6f77035
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructE__some_union__union"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructE__some_union__union</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page
new file mode 100644
index 0000000..fe5e7bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructF"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructF</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page
new file mode 100644
index 0000000..a72301a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructFixedArray.frob"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructFixedArray" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_fixed_array_frob</api:name>
+    </api:function>
+
+  </info>
+  <title>TestStructFixedArray.prototype.frob</title>
+  
+<synopsis><code mime="text/x-gjs">
+function frob():void {
+    // Gjs wrapper for regress_test_struct_fixed_array_frob()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page
new file mode 100644
index 0000000..b5df529
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructFixedArray"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructFixedArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page
new file mode 100644
index 0000000..d537cb6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.instance_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_instance_method</api:name>
+    </api:function>
+
+  </info>
+  <title>TestSubObj.prototype.instance_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function instance_method():Number {
+    // Gjs wrapper for regress_test_sub_obj_instance_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page
new file mode 100644
index 0000000..86fcd53
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestObj</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_new</api:name>
+    </api:function>
+
+  </info>
+  <title>TestSubObj.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.TestObj {
+    // Gjs wrapper for regress_test_sub_obj_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page
new file mode 100644
index 0000000..fe84d57
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSubObj</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_sub_obj = Regress.TestSubObj()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestObj</code>
+      <item>
+        <code>Regress.TestSubObj</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page
new file mode 100644
index 0000000..391f291
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.unset_bare"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_unset_bare</api:name>
+    </api:function>
+
+  </info>
+  <title>TestSubObj.prototype.unset_bare</title>
+  
+<synopsis><code mime="text/x-gjs">
+function unset_bare():void {
+    // Gjs wrapper for regress_test_sub_obj_unset_bare()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page
new file mode 100644
index 0000000..d815a3f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestTypeGUInt64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestTypeGUInt64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page
new file mode 100644
index 0000000..7835ee5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x-testbool"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="property"/>
+    <title type="link" role="topic">testbool</title>
+
+  </info>
+  <title>Regress.TestWi8021x:testbool</title>
+  
+<synopsis><code mime="text/x-python">
+"testbool"             Boolean                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page
new file mode 100644
index 0000000..e6bf3d3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.get_testbool"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_get_testbool</api:name>
+    </api:function>
+
+  </info>
+  <title>TestWi8021x.prototype.get_testbool</title>
+  
+<synopsis><code mime="text/x-gjs">
+function get_testbool():Boolean {
+    // Gjs wrapper for regress_test_wi_802_1x_get_testbool()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page
new file mode 100644
index 0000000..11f813d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.new"
+      type="topic"
+      style="constructor"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="constructor"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestWi8021x</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_new</api:name>
+    </api:function>
+
+  </info>
+  <title>TestWi8021x.new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function new():Regress.TestWi8021x {
+    // Gjs wrapper for regress_test_wi_802_1x_new()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page
new file mode 100644
index 0000000..2ea9c57
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestWi8021x</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_wi8021x = Regress.TestWi8021x(<link xref='Regress.TestWi8021x-testbool'>testbool</link>=value)  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestWi8021x</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/x-gjs"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page
new file mode 100644
index 0000000..6735650
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.set_testbool"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_set_testbool</api:name>
+      <api:arg>
+        <api:type>Boolean</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestWi8021x.prototype.set_testbool</title>
+  
+<synopsis><code mime="text/x-gjs">
+function set_testbool(v:Boolean):void {
+    // Gjs wrapper for regress_test_wi_802_1x_set_testbool()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>v :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page
new file mode 100644
index 0000000..632758a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_static_method</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>static_method</title>
+  
+<synopsis><code mime="text/x-gjs">
+function static_method(x:Number):Number {
+    // Gjs wrapper for regress_test_wi_802_1x_static_method()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.UTF8_CONSTANT.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.UTF8_CONSTANT.page
new file mode 100644
index 0000000..8f3f532
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.UTF8_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.UTF8_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.UTF8_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.VaListAlias.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.VaListAlias.page
new file mode 100644
index 0000000..bfd52d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.VaListAlias.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.VaListAlias"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.VaListAlias</title>
+  
+  
+  
+    <p>Typedef'd va_list for additional reasons</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page
new file mode 100644
index 0000000..fb7c16d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.aliased_caller_alloc"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_aliased_caller_alloc</api:name>
+    </api:function>
+
+  </info>
+  <title>aliased_caller_alloc</title>
+  
+<synopsis><code mime="text/x-gjs">
+function aliased_caller_alloc():void {
+    // Gjs wrapper for regress_aliased_caller_alloc()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page
new file mode 100644
index 0000000..1547d02
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_attribute_func"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_annotation_attribute_func</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_attribute_func</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_attribute_func(object:Regress.AnnotationObject, data:String):Number {
+    // Gjs wrapper for regress_annotation_attribute_func()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/>.</p></dd>
+<dt><p>data :</p></dt>
+<dd><p>Some data.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page
new file mode 100644
index 0000000..5c9042c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_custom_destroy"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_custom_destroy</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_custom_destroy</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_custom_destroy(callback:Regress.AnnotationCallback):void {
+    // Gjs wrapper for regress_annotation_custom_destroy()
+}
+</code></synopsis>
+
+  
+    <p>Test messing up the heuristic of closure/destroy-notification
+detection, and fixing it via regress_annotations.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd><p>Destroy notification</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page
new file mode 100644
index 0000000..cb782e6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_get_source_file"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>filename</api:type>
+      </api:returns>
+      <api:name>regress_annotation_get_source_file</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_get_source_file</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_get_source_file():filename {
+    // Gjs wrapper for regress_annotation_get_source_file()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>Source file</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page
new file mode 100644
index 0000000..753a719
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_init"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_init</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>argv</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_init</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_init(argv:[String]):void {
+    // Gjs wrapper for regress_annotation_init()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>argv :</p></dt>
+<dd><p>The arguments.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page
new file mode 100644
index 0000000..1d532df
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_invalid_regress_annotation"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_invalid_regress_annotation</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_invalid_regress_annotation</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_invalid_regress_annotation(foo:Number):void {
+    // Gjs wrapper for regress_annotation_invalid_regress_annotation()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo :</p></dt>
+<dd><p>some text (e.g. example) or else</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page
new file mode 100644
index 0000000..8c1805f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_ptr_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_ptr_array</api:name>
+      <api:arg>
+        <api:type>[GObject.Value]</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_ptr_array</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_ptr_array(array:[GObject.Value]):void {
+    // Gjs wrapper for regress_annotation_ptr_array()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd><p>the array</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page
new file mode 100644
index 0000000..842bd60
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_return_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_annotation_return_array</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_return_array</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_return_array():[String] {
+    // Gjs wrapper for regress_annotation_return_array()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page
new file mode 100644
index 0000000..6790d9f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_return_filename"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>filename</api:type>
+      </api:returns>
+      <api:name>regress_annotation_return_filename</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_return_filename</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_return_filename():filename {
+    // Gjs wrapper for regress_annotation_return_filename()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An annotated filename</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page
new file mode 100644
index 0000000..151e84f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_set_source_file"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_set_source_file</api:name>
+      <api:arg>
+        <api:type>filename</api:type>
+        <api:name>fname</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_set_source_file</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_set_source_file(fname:filename):void {
+    // Gjs wrapper for regress_annotation_set_source_file()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>fname :</p></dt>
+<dd><p>Source file</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page
new file mode 100644
index 0000000..de11fc5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_space_after_comment_bug631690"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_space_after_comment_bug631690</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_space_after_comment_bug631690</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_space_after_comment_bug631690():void {
+    // Gjs wrapper for regress_annotation_space_after_comment_bug631690()
+}
+</code></synopsis>
+
+  
+    <p>Explicitly test having a space after the ** here.</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page
new file mode 100644
index 0000000..f1bbd9c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_array_length"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_array_length</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>properties</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_string_array_length</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_string_array_length(properties:[String]):void {
+    // Gjs wrapper for regress_annotation_string_array_length()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>properties :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page
new file mode 100644
index 0000000..00af2f1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_zero_terminated"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_zero_terminated</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_string_zero_terminated</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_string_zero_terminated():[String] {
+    // Gjs wrapper for regress_annotation_string_zero_terminated()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page
new file mode 100644
index 0000000..cf823b7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_zero_terminated_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_zero_terminated_out</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_string_zero_terminated_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_string_zero_terminated_out(out:[String]):void {
+    // Gjs wrapper for regress_annotation_string_zero_terminated_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page
new file mode 100644
index 0000000..8d954ed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_test_parsing_bug630862"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_test_parsing_bug630862</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_test_parsing_bug630862</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_test_parsing_bug630862():GObject.Object {
+    // Gjs wrapper for regress_annotation_test_parsing_bug630862()
+}
+</code></synopsis>
+
+  
+    <p>See https://bugzilla.gnome.org/show_bug.cgi?id=630862</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An object, note the colon:in here</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page
new file mode 100644
index 0000000..e246668
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_transfer_floating"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_transfer_floating</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_transfer_floating</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_transfer_floating():GObject.Object {
+    // Gjs wrapper for regress_annotation_transfer_floating()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>A floating object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page
new file mode 100644
index 0000000..f5aafc2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_versioned"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_annotation_versioned</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_versioned</title>
+  
+<synopsis><code mime="text/x-gjs">
+function annotation_versioned():void {
+    // Gjs wrapper for regress_annotation_versioned()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+    <p>Since 0.6</p>
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page
new file mode 100644
index 0000000..e72ee9b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.atest_error_quark"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Quark</api:type>
+      </api:returns>
+      <api:name>regress_atest_error_quark</api:name>
+    </api:function>
+
+  </info>
+  <title>atest_error_quark</title>
+  
+<synopsis><code mime="text/x-gjs">
+function atest_error_quark():GLib.Quark {
+    // Gjs wrapper for regress_atest_error_quark()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page
new file mode 100644
index 0000000..c3db813
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_async_ready_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_async_ready_callback</api:name>
+      <api:arg>
+        <api:type>Gio.Cancellable</api:type>
+        <api:name>cancellable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Gio.AsyncReadyCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_async_ready_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_async_ready_callback(cancellable:Gio.Cancellable, callback:Gio.AsyncReadyCallback):void {
+    // Gjs wrapper for regress_foo_async_ready_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>cancellable :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page
new file mode 100644
index 0000000..ac1b97d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_destroy_notify_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_destroy_notify_callback</api:name>
+      <api:arg>
+        <api:type>Regress.FooCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_destroy_notify_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_destroy_notify_callback(callback:Regress.FooCallback):void {
+    // Gjs wrapper for regress_foo_destroy_notify_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page
new file mode 100644
index 0000000..242c00d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_init"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_foo_init</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_init</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_init():Number {
+    // Gjs wrapper for regress_foo_init()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page
new file mode 100644
index 0000000..e7f1c4f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_method_external_references"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_method_external_references</api:name>
+      <api:arg>
+        <api:type>Utility.Object</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.EnumType</api:type>
+        <api:name>e</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.FlagType</api:type>
+        <api:name>f</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.Struct</api:type>
+        <api:name>s</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_method_external_references</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_method_external_references(object:Utility.Object, e:Utility.EnumType, f:Utility.FlagType, s:Utility.Struct):void {
+    // Gjs wrapper for regress_foo_method_external_references()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>e :</p></dt>
+<dd></dd>
+<dt><p>f :</p></dt>
+<dd></dd>
+<dt><p>s :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page
new file mode 100644
index 0000000..7efaffc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_not_a_constructor_new"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooObject</api:type>
+      </api:returns>
+      <api:name>regress_foo_not_a_constructor_new</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_not_a_constructor_new</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_not_a_constructor_new():Regress.FooObject {
+    // Gjs wrapper for regress_foo_not_a_constructor_new()
+}
+</code></synopsis>
+
+  
+    <p>This should be scanned as a top-level function, and shouldn't cause
+a "Can't find matching type for constructor" warning.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_skip_me.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_skip_me.page
new file mode 100644
index 0000000..1458b27
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_skip_me.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_skip_me"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_skip_me</api:name>
+      <api:arg>
+        <api:type>Regress.FooSkippable</api:type>
+        <api:name>fs</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_skip_me</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_skip_me(fs:Regress.FooSkippable):void {
+    // Gjs wrapper for regress_foo_skip_me()
+}
+</code></synopsis>
+
+  
+    <p>Does something that's only interesting from C and should not be
+exposed to language bindings.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>fs :</p></dt>
+<dd><p>a <link xref="Regress.FooSkippable"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_some_variant.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_some_variant.page
new file mode 100644
index 0000000..0974061
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_some_variant.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_some_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_some_variant</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>va_list</api:type>
+        <api:name>args</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_some_variant</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_some_variant(x:Number, args:va_list):void {
+    // Gjs wrapper for regress_foo_some_variant()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>args :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_some_variant_ptr.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_some_variant_ptr.page
new file mode 100644
index 0000000..d63650f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_some_variant_ptr.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_some_variant_ptr"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_some_variant_ptr</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>va_list</api:type>
+        <api:name>args</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_some_variant_ptr</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_some_variant_ptr(x:Number, args:va_list):void {
+    // Gjs wrapper for regress_foo_some_variant_ptr()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>args :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page
new file mode 100644
index 0000000..c77f18a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_array</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_test_array</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_array():[String] {
+    // Gjs wrapper for regress_foo_test_array()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page
new file mode 100644
index 0000000..c46680c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_char_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_char_param</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_char_param</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_const_char_param(param:String):void {
+    // Gjs wrapper for regress_foo_test_const_char_param()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page
new file mode 100644
index 0000000..f42f0a2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_char_retval"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_char_retval</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_char_retval</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_const_char_retval():String {
+    // Gjs wrapper for regress_foo_test_const_char_retval()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page
new file mode 100644
index 0000000..9a104a7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_struct_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_struct_param</api:name>
+      <api:arg>
+        <api:type>Regress.FooStruct</api:type>
+        <api:name>param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_struct_param</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_const_struct_param(param:Regress.FooStruct):void {
+    // Gjs wrapper for regress_foo_test_const_struct_param()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page
new file mode 100644
index 0000000..7a3295d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_struct_retval"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooStruct</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_struct_retval</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_struct_retval</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_const_struct_retval():Regress.FooStruct {
+    // Gjs wrapper for regress_foo_test_const_struct_retval()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page
new file mode 100644
index 0000000..9623970
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_string_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_string_array</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_string_array</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_string_array(array:[String]):void {
+    // Gjs wrapper for regress_foo_test_string_array()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page
new file mode 100644
index 0000000..872ed05
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_string_array_with_g"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_string_array_with_g</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_string_array_with_g</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_string_array_with_g(array:[String]):void {
+    // Gjs wrapper for regress_foo_test_string_array_with_g()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page
new file mode 100644
index 0000000..8545e84
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_unsigned_qualifier"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_unsigned_qualifier</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>unsigned_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_unsigned_qualifier</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_unsigned_qualifier(unsigned_param:Number):void {
+    // Gjs wrapper for regress_foo_test_unsigned_qualifier()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>unsigned_param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page
new file mode 100644
index 0000000..25bfbd9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_unsigned_type"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_unsigned_type</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>unsigned_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_unsigned_type</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_unsigned_type(unsigned_param:Number):void {
+    // Gjs wrapper for regress_foo_test_unsigned_type()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>unsigned_param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback.page
new file mode 100644
index 0000000..4ae258f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_varargs_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_varargs_callback(i:Number, callback:Regress.FooVarargsCallback):void {
+    // Gjs wrapper for regress_foo_test_varargs_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback2.page
new file mode 100644
index 0000000..c65a818
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback2</api:name>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_varargs_callback2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_varargs_callback2(callback:Regress.FooVarargsCallback):void {
+    // Gjs wrapper for regress_foo_test_varargs_callback2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback3.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback3.page
new file mode 100644
index 0000000..56cc6c0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_varargs_callback3.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback3"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback3</api:name>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_varargs_callback3</title>
+  
+<synopsis><code mime="text/x-gjs">
+function foo_test_varargs_callback3(callback:Regress.FooVarargsCallback, callback2:Regress.FooVarargsCallback):void {
+    // Gjs wrapper for regress_foo_test_varargs_callback3()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>callback2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page
new file mode 100644
index 0000000..1b8cab1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.func_obj_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_func_obj_null_in</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>func_obj_null_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function func_obj_null_in(obj:Regress.TestObj):void {
+    // Gjs wrapper for regress_func_obj_null_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page
new file mode 100644
index 0000000..df39d48
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.global_get_flags_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_global_get_flags_out</api:name>
+    </api:function>
+
+  </info>
+  <title>global_get_flags_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function global_get_flags_out():void {
+    // Gjs wrapper for regress_global_get_flags_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page
new file mode 100644
index 0000000..3901309
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.has_parameter_named_attrs"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_has_parameter_named_attrs</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[guint32]</api:type>
+        <api:name>attributes</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>has_parameter_named_attrs</title>
+  
+<synopsis><code mime="text/x-gjs">
+function has_parameter_named_attrs(foo:Number, attributes:[guint32]):void {
+    // Gjs wrapper for regress_has_parameter_named_attrs()
+}
+</code></synopsis>
+
+  
+    <p>This test case mirrors GnomeKeyringPasswordSchema from
+libgnome-keyring.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>foo :</p></dt>
+<dd><p>some int</p></dd>
+<dt><p>attributes :</p></dt>
+<dd><p>list of attributes</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page
new file mode 100644
index 0000000..9d7f75d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.introspectable_via_alias"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_introspectable_via_alias</api:name>
+      <api:arg>
+        <api:type>Regress.PtrArrayAlias</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>introspectable_via_alias</title>
+  
+<synopsis><code mime="text/x-gjs">
+function introspectable_via_alias(data:Regress.PtrArrayAlias):void {
+    // Gjs wrapper for regress_introspectable_via_alias()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.not_introspectable_via_alias.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.not_introspectable_via_alias.page
new file mode 100644
index 0000000..b1192a9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.not_introspectable_via_alias.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.not_introspectable_via_alias"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_not_introspectable_via_alias</api:name>
+      <api:arg>
+        <api:type>Regress.VaListAlias</api:type>
+        <api:name>ok</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>not_introspectable_via_alias</title>
+  
+<synopsis><code mime="text/x-gjs">
+function not_introspectable_via_alias(ok:Regress.VaListAlias):void {
+    // Gjs wrapper for regress_not_introspectable_via_alias()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ok :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.random_function_with_skipped_structure.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.random_function_with_skipped_structure.page
new file mode 100644
index 0000000..5981e90
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.random_function_with_skipped_structure.page
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<page id="Regress.random_function_with_skipped_structure"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_random_function_with_skipped_structure</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.SkippedStructure</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>random_function_with_skipped_structure</title>
+  
+<synopsis><code mime="text/x-gjs">
+function random_function_with_skipped_structure(x:Number, foo:Regress.SkippedStructure, v:Number):void {
+    // Gjs wrapper for regress_random_function_with_skipped_structure()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>v :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page
new file mode 100644
index 0000000..8d85040
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.set_abort_on_error"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_set_abort_on_error</api:name>
+      <api:arg>
+        <api:type>Boolean</api:type>
+        <api:name>abort_on_error</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>set_abort_on_error</title>
+  
+<synopsis><code mime="text/x-gjs">
+function set_abort_on_error(abort_on_error:Boolean):void {
+    // Gjs wrapper for regress_set_abort_on_error()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>abort_on_error :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page
new file mode 100644
index 0000000..bf026db
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_array_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackArray</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_callback(callback:Regress.TestCallbackArray):Number {
+    // Gjs wrapper for regress_test_array_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page
new file mode 100644
index 0000000..c560c5a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_out_objects"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_out_objects</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_out_objects</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_fixed_out_objects():void {
+    // Gjs wrapper for regress_test_array_fixed_out_objects()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page
new file mode 100644
index 0000000..9670d04
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_in</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_size_int_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_fixed_size_int_in(ints:[Number]):Number {
+    // Gjs wrapper for regress_test_array_fixed_size_int_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the sum of the items in <code>ints</code></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page
new file mode 100644
index 0000000..e351924
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_size_int_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_fixed_size_int_out():void {
+    // Gjs wrapper for regress_test_array_fixed_size_int_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page
new file mode 100644
index 0000000..7773cf2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[Number]</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_size_int_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_fixed_size_int_return():[Number] {
+    // Gjs wrapper for regress_test_array_fixed_size_int_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>a list of 5 integers ranging from 0 to 4</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page
new file mode 100644
index 0000000..20a8fb1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint16_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint16_in</api:name>
+      <api:arg>
+        <api:type>[gint16]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint16_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_gint16_in(ints:[gint16]):Number {
+    // Gjs wrapper for regress_test_array_gint16_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page
new file mode 100644
index 0000000..121a81f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint32_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint32</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint32_in</api:name>
+      <api:arg>
+        <api:type>[gint32]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint32_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_gint32_in(ints:[gint32]):gint32 {
+    // Gjs wrapper for regress_test_array_gint32_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page
new file mode 100644
index 0000000..82652a5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint64_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint64_in</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint64_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_gint64_in(ints:[Number]):Number {
+    // Gjs wrapper for regress_test_array_gint64_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page
new file mode 100644
index 0000000..0ed3479
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint8_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint8_in</api:name>
+      <api:arg>
+        <api:type>[gint8]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint8_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_gint8_in(ints:[gint8]):Number {
+    // Gjs wrapper for regress_test_array_gint8_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page
new file mode 100644
index 0000000..e7acd2b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gtype_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gtype_in</api:name>
+      <api:arg>
+        <api:type>[GType]</api:type>
+        <api:name>types</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gtype_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_gtype_in(types:[GType]):String {
+    // Gjs wrapper for regress_test_array_gtype_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>types :</p></dt>
+<dd><p>List of types</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>string representation of provided types</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page
new file mode 100644
index 0000000..c7f8ddd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_full_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[Number]</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_full_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_int_full_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_full_out():[Number] {
+    // Gjs wrapper for regress_test_array_int_full_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>a new array of integers.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page
new file mode 100644
index 0000000..9339276
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_in</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_in(ints:[Number]):Number {
+    // Gjs wrapper for regress_test_array_int_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page
new file mode 100644
index 0000000..4f1fc06
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_inout"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_inout</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_inout</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_inout(ints:[Number]):void {
+    // Gjs wrapper for regress_test_array_int_inout()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>a list of integers whose items will be increased by 1, except the first that will be dropped</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page
new file mode 100644
index 0000000..1c47a95
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_none_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[Number]</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_none_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_int_none_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_none_out():[Number] {
+    // Gjs wrapper for regress_test_array_int_none_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>a static array of integers.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page
new file mode 100644
index 0000000..b37cb53
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_null_in</api:name>
+      <api:arg>
+        <api:type>[Number]</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_null_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_null_in(arr:[Number]):void {
+    // Gjs wrapper for regress_test_array_int_null_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page
new file mode 100644
index 0000000..bdc8eab
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_null_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_int_null_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_null_out():void {
+    // Gjs wrapper for regress_test_array_int_null_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page
new file mode 100644
index 0000000..987667f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_int_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_array_int_out():void {
+    // Gjs wrapper for regress_test_array_int_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page
new file mode 100644
index 0000000..c6ccd90
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_async_ready_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_async_ready_callback</api:name>
+      <api:arg>
+        <api:type>Gio.AsyncReadyCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_async_ready_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_async_ready_callback(callback:Gio.AsyncReadyCallback):void {
+    // Gjs wrapper for regress_test_async_ready_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page
new file mode 100644
index 0000000..9e505ac
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean</api:name>
+      <api:arg>
+        <api:type>Boolean</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_boolean</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_boolean(in:Boolean):Boolean {
+    // Gjs wrapper for regress_test_boolean()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page
new file mode 100644
index 0000000..3d3aec1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean_false"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean_false</api:name>
+      <api:arg>
+        <api:type>Boolean</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_boolean_false</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_boolean_false(in:Boolean):Boolean {
+    // Gjs wrapper for regress_test_boolean_false()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page
new file mode 100644
index 0000000..a25d704
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean_true"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean_true</api:name>
+      <api:arg>
+        <api:type>Boolean</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_boolean_true</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_boolean_true(in:Boolean):Boolean {
+    // Gjs wrapper for regress_test_boolean_true()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page
new file mode 100644
index 0000000..d51550e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_context_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo.Context</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_context_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_context_full_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_cairo_context_full_return():cairo.Context {
+    // Gjs wrapper for regress_test_cairo_context_full_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page
new file mode 100644
index 0000000..b0f4f9b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_context_none_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_context_none_in</api:name>
+      <api:arg>
+        <api:type>cairo.Context</api:type>
+        <api:name>context</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_cairo_context_none_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_cairo_context_none_in(context:cairo.Context):void {
+    // Gjs wrapper for regress_test_cairo_context_none_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>context :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page
new file mode 100644
index 0000000..be96339
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_full_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_full_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_full_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_cairo_surface_full_out():void {
+    // Gjs wrapper for regress_test_cairo_surface_full_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page
new file mode 100644
index 0000000..be1ca3f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo.Surface</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_full_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_cairo_surface_full_return():cairo.Surface {
+    // Gjs wrapper for regress_test_cairo_surface_full_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page
new file mode 100644
index 0000000..e875ab1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_none_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_none_in</api:name>
+      <api:arg>
+        <api:type>cairo.Surface</api:type>
+        <api:name>surface</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_none_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_cairo_surface_none_in(surface:cairo.Surface):void {
+    // Gjs wrapper for regress_test_cairo_surface_none_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>surface :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page
new file mode 100644
index 0000000..cbfd688
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_none_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo.Surface</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_none_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_none_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_cairo_surface_none_return():cairo.Surface {
+    // Gjs wrapper for regress_test_cairo_surface_none_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page
new file mode 100644
index 0000000..a9db3a5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback(callback:Regress.TestCallback):Number {
+    // Gjs wrapper for regress_test_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page
new file mode 100644
index 0000000..f9db124
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_async"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_async</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_async</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback_async(callback:Regress.TestCallbackUserData):void {
+    // Gjs wrapper for regress_test_callback_async()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page
new file mode 100644
index 0000000..3e0c93e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_destroy_notify"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_destroy_notify</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_destroy_notify</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback_destroy_notify(callback:Regress.TestCallbackUserData):Number {
+    // Gjs wrapper for regress_test_callback_destroy_notify()
+}
+</code></synopsis>
+
+  
+    <p>Notified - callback persists until a DestroyNotify delegate
+is invoked.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page
new file mode 100644
index 0000000..a009729
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_destroy_notify_no_user_data"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_destroy_notify_no_user_data</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_destroy_notify_no_user_data</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback_destroy_notify_no_user_data(callback:Regress.TestCallbackUserData):Number {
+    // Gjs wrapper for regress_test_callback_destroy_notify_no_user_data()
+}
+</code></synopsis>
+
+  
+    <p>Adds a scope notified callback with no user data. This can invoke an error
+condition in bindings which needs to be tested.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page
new file mode 100644
index 0000000..10d2088
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_thaw_async"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_thaw_async</api:name>
+    </api:function>
+
+  </info>
+  <title>test_callback_thaw_async</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback_thaw_async():Number {
+    // Gjs wrapper for regress_test_callback_thaw_async()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page
new file mode 100644
index 0000000..49c482c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_thaw_notifications"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_thaw_notifications</api:name>
+    </api:function>
+
+  </info>
+  <title>test_callback_thaw_notifications</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback_thaw_notifications():Number {
+    // Gjs wrapper for regress_test_callback_thaw_notifications()
+}
+</code></synopsis>
+
+  
+    <p>Invokes all callbacks installed by #test_callback_destroy_notify(),
+adding up their return values, and removes them, invoking the
+corresponding destroy notfications.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>Sum of the return values of the invoked callbacks.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page
new file mode 100644
index 0000000..c17015a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_user_data"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_user_data</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_user_data</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_callback_user_data(callback:Regress.TestCallbackUserData):Number {
+    // Gjs wrapper for regress_test_callback_user_data()
+}
+</code></synopsis>
+
+  
+    <p>Call - callback parameter persists for the duration of the method
+call and can be released on return.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page
new file mode 100644
index 0000000..2334781
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_closure</api:name>
+      <api:arg>
+        <api:type>GObject.Closure</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_closure</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_closure(closure:GObject.Closure):Number {
+    // Gjs wrapper for regress_test_closure()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page
new file mode 100644
index 0000000..71d015b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure_one_arg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_closure_one_arg</api:name>
+      <api:arg>
+        <api:type>GObject.Closure</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>arg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_closure_one_arg</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_closure_one_arg(closure:GObject.Closure, arg:Number):Number {
+    // Gjs wrapper for regress_test_closure_one_arg()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd></dd>
+<dt><p>arg :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page
new file mode 100644
index 0000000..f0d8408
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_closure_variant</api:name>
+      <api:arg>
+        <api:type>GObject.Closure</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.Variant</api:type>
+        <api:name>arg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_closure_variant</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_closure_variant(closure:GObject.Closure, arg:GLib.Variant):GLib.Variant {
+    // Gjs wrapper for regress_test_closure_variant()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd><p>GClosure which takes one GVariant and returns a GVariant</p></dd>
+<dt><p>arg :</p></dt>
+<dd><p>a GVariant passed as argument to <code>closure</code></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the return value of <code>closure</code></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page
new file mode 100644
index 0000000..1bbead6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_date_in_gvalue"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Value</api:type>
+      </api:returns>
+      <api:name>regress_test_date_in_gvalue</api:name>
+    </api:function>
+
+  </info>
+  <title>test_date_in_gvalue</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_date_in_gvalue():GObject.Value {
+    // Gjs wrapper for regress_test_date_in_gvalue()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page
new file mode 100644
index 0000000..c93ebef
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_def_error_quark"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Quark</api:type>
+      </api:returns>
+      <api:name>regress_test_def_error_quark</api:name>
+    </api:function>
+
+  </info>
+  <title>test_def_error_quark</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_def_error_quark():GLib.Quark {
+    // Gjs wrapper for regress_test_def_error_quark()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page
new file mode 100644
index 0000000..3074d36
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_double"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_double</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_double</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_double(in:Number):Number {
+    // Gjs wrapper for regress_test_double()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page
new file mode 100644
index 0000000..1b31653
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_filename_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_filename_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_filename_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_filename_return():<list> {
+    // Gjs wrapper for regress_test_filename_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>list of strings</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page
new file mode 100644
index 0000000..e255ede
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_float"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_float</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_float</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_float(in:Number):Number {
+    // Gjs wrapper for regress_test_float()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page
new file mode 100644
index 0000000..996d9d1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_garray_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_test_garray_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_garray_container_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_garray_container_return():[String] {
+    // Gjs wrapper for regress_test_garray_container_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page
new file mode 100644
index 0000000..9b9bfbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_garray_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_test_garray_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_garray_full_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_garray_full_return():[String] {
+    // Gjs wrapper for regress_test_garray_full_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page
new file mode 100644
index 0000000..f34a422
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gerror_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gerror_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gerror_callback(callback:Regress.TestCallbackGError):void {
+    // Gjs wrapper for regress_test_gerror_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page
new file mode 100644
index 0000000..46f1663
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: String}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_container_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_container_return():{String: String} {
+    // Gjs wrapper for regress_test_ghash_container_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page
new file mode 100644
index 0000000..863d3a6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: String}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_everything_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_everything_return():{String: String} {
+    // Gjs wrapper for regress_test_ghash_everything_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page
new file mode 100644
index 0000000..629039d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_gvalue_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_gvalue_in</api:name>
+      <api:arg>
+        <api:type>{String: GObject.Value}</api:type>
+        <api:name>hash</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_gvalue_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_gvalue_in(hash:{String: GObject.Value}):void {
+    // Gjs wrapper for regress_test_ghash_gvalue_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>hash :</p></dt>
+<dd><p>the hash table returned by <link xref="Regress.test_ghash_gvalue_return"/>.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page
new file mode 100644
index 0000000..881fc77
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_gvalue_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: GObject.Value}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_gvalue_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_gvalue_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_gvalue_return():{String: GObject.Value} {
+    // Gjs wrapper for regress_test_ghash_gvalue_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page
new file mode 100644
index 0000000..a750335
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nested_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: {String: String}}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nested_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nested_everything_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_nested_everything_return():{String: {String: String}} {
+    // Gjs wrapper for regress_test_ghash_nested_everything_return()
+}
+</code></synopsis>
+
+  
+    <p>Specify nested parameterized types directly with the (type ) annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page
new file mode 100644
index 0000000..ec6d712
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nested_everything_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: {String: String}}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nested_everything_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nested_everything_return2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_nested_everything_return2():{String: {String: String}} {
+    // Gjs wrapper for regress_test_ghash_nested_everything_return2()
+}
+</code></synopsis>
+
+  
+    <p>Another way of specifying nested parameterized types: using the
+element-type annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page
new file mode 100644
index 0000000..d54a659
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_in</api:name>
+      <api:arg>
+        <api:type>{String: String}</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_nothing_in(in:{String: String}):void {
+    // Gjs wrapper for regress_test_ghash_nothing_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page
new file mode 100644
index 0000000..a6d376e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_in2</api:name>
+      <api:arg>
+        <api:type>{String: String}</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_in2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_nothing_in2(in:{String: String}):void {
+    // Gjs wrapper for regress_test_ghash_nothing_in2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page
new file mode 100644
index 0000000..5e18e08
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: String}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_nothing_return():{String: String} {
+    // Gjs wrapper for regress_test_ghash_nothing_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page
new file mode 100644
index 0000000..fe99a70
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: String}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_return2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_nothing_return2():{String: String} {
+    // Gjs wrapper for regress_test_ghash_nothing_return2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page
new file mode 100644
index 0000000..f984cc6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_in</api:name>
+      <api:arg>
+        <api:type>{String: String}</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_null_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_null_in(in:{String: String}):void {
+    // Gjs wrapper for regress_test_ghash_null_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page
new file mode 100644
index 0000000..e4c1583
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_null_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_null_out():void {
+    // Gjs wrapper for regress_test_ghash_null_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page
new file mode 100644
index 0000000..60c23f5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{String: String}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_null_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ghash_null_return():{String: String} {
+    // Gjs wrapper for regress_test_ghash_null_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page
new file mode 100644
index 0000000..f1c08c4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_container_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_container_return():<list> {
+    // Gjs wrapper for regress_test_glist_container_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page
new file mode 100644
index 0000000..d54c888
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_everything_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_everything_return():<list> {
+    // Gjs wrapper for regress_test_glist_everything_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page
new file mode 100644
index 0000000..b041b94
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_nothing_in(in:<list>):void {
+    // Gjs wrapper for regress_test_glist_nothing_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page
new file mode 100644
index 0000000..c5a7d9b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_in2</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_in2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_nothing_in2(in:<list>):void {
+    // Gjs wrapper for regress_test_glist_nothing_in2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page
new file mode 100644
index 0000000..2a0af9f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_nothing_return():<list> {
+    // Gjs wrapper for regress_test_glist_nothing_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page
new file mode 100644
index 0000000..4c2a63c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_return2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_nothing_return2():<list> {
+    // Gjs wrapper for regress_test_glist_nothing_return2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page
new file mode 100644
index 0000000..4579c80
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_null_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_null_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_null_in(in:<list>):void {
+    // Gjs wrapper for regress_test_glist_null_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page
new file mode 100644
index 0000000..5b82c2e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_null_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_null_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_glist_null_out():void {
+    // Gjs wrapper for regress_test_glist_null_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page
new file mode 100644
index 0000000..14334e0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_container_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_container_return():<list> {
+    // Gjs wrapper for regress_test_gslist_container_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page
new file mode 100644
index 0000000..d974687
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_everything_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_everything_return():<list> {
+    // Gjs wrapper for regress_test_gslist_everything_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page
new file mode 100644
index 0000000..9379cef
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_nothing_in(in:<list>):void {
+    // Gjs wrapper for regress_test_gslist_nothing_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page
new file mode 100644
index 0000000..87607bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_in2</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_in2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_nothing_in2(in:<list>):void {
+    // Gjs wrapper for regress_test_gslist_nothing_in2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page
new file mode 100644
index 0000000..7963703
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_nothing_return():<list> {
+    // Gjs wrapper for regress_test_gslist_nothing_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page
new file mode 100644
index 0000000..761b7b6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_return2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_nothing_return2():<list> {
+    // Gjs wrapper for regress_test_gslist_nothing_return2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page
new file mode 100644
index 0000000..928f1d3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_null_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_null_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_null_in(in:<list>):void {
+    // Gjs wrapper for regress_test_gslist_null_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page
new file mode 100644
index 0000000..a25e08e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_null_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_null_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gslist_null_out():void {
+    // Gjs wrapper for regress_test_gslist_null_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page
new file mode 100644
index 0000000..9adb3fa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gtype"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GType</api:type>
+      </api:returns>
+      <api:name>regress_test_gtype</api:name>
+      <api:arg>
+        <api:type>GType</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gtype</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gtype(in:GType):GType {
+    // Gjs wrapper for regress_test_gtype()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page
new file mode 100644
index 0000000..8558a6b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_as"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_as</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_as</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gvariant_as():GLib.Variant {
+    // Gjs wrapper for regress_test_gvariant_as()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page
new file mode 100644
index 0000000..2671f72
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_asv"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_asv</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_asv</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gvariant_asv():GLib.Variant {
+    // Gjs wrapper for regress_test_gvariant_asv()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page
new file mode 100644
index 0000000..e54e622
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_i"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_i</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_i</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gvariant_i():GLib.Variant {
+    // Gjs wrapper for regress_test_gvariant_i()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page
new file mode 100644
index 0000000..61cf1e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_s"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_s</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_s</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gvariant_s():GLib.Variant {
+    // Gjs wrapper for regress_test_gvariant_s()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page
new file mode 100644
index 0000000..3cecce5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_v"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_v</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_v</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_gvariant_v():GLib.Variant {
+    // Gjs wrapper for regress_test_gvariant_v()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page
new file mode 100644
index 0000000..6779010
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.test_hash_table_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_hash_table_callback</api:name>
+      <api:arg>
+        <api:type>{String: Number}</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestCallbackHashtable</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_hash_table_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_hash_table_callback(data:{String: Number}, callback:Regress.TestCallbackHashtable):void {
+    // Gjs wrapper for regress_test_hash_table_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>GHashTable that gets passed to callback</p></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page
new file mode 100644
index 0000000..5007da2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_int</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int(in:Number):Number {
+    // Gjs wrapper for regress_test_int()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page
new file mode 100644
index 0000000..16a4a0b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int16"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint16</api:type>
+      </api:returns>
+      <api:name>regress_test_int16</api:name>
+      <api:arg>
+        <api:type>gint16</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int16</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int16(in:gint16):gint16 {
+    // Gjs wrapper for regress_test_int16()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page
new file mode 100644
index 0000000..e8ecc27
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int32"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint32</api:type>
+      </api:returns>
+      <api:name>regress_test_int32</api:name>
+      <api:arg>
+        <api:type>gint32</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int32</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int32(in:gint32):gint32 {
+    // Gjs wrapper for regress_test_int32()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page
new file mode 100644
index 0000000..16851bb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int64"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_int64</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int64</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int64(in:Number):Number {
+    // Gjs wrapper for regress_test_int64()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page
new file mode 100644
index 0000000..c4f8669
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint8</api:type>
+      </api:returns>
+      <api:name>regress_test_int8</api:name>
+      <api:arg>
+        <api:type>gint8</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int8</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int8(in:gint8):gint8 {
+    // Gjs wrapper for regress_test_int8()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page
new file mode 100644
index 0000000..3f1aac0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int_out_utf8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_int_out_utf8</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int_out_utf8</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int_out_utf8(in:String):void {
+    // Gjs wrapper for regress_test_int_out_utf8()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page
new file mode 100644
index 0000000..a7fc731
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int_value_arg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_int_value_arg</api:name>
+      <api:arg>
+        <api:type>GObject.Value</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int_value_arg</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_int_value_arg(v:GObject.Value):Number {
+    // Gjs wrapper for regress_test_int_value_arg()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>v :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page
new file mode 100644
index 0000000..fb7aa3f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_long"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_long</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_long</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_long(in:Number):Number {
+    // Gjs wrapper for regress_test_long()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page
new file mode 100644
index 0000000..56fc322
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multi_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_multi_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_multi_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_multi_callback(callback:Regress.TestCallback):Number {
+    // Gjs wrapper for regress_test_multi_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page
new file mode 100644
index 0000000..5a69995
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multi_double_args"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_multi_double_args</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_multi_double_args</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_multi_double_args(in:Number):void {
+    // Gjs wrapper for regress_test_multi_double_args()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page
new file mode 100644
index 0000000..21e97a2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multiline_doc_comments"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_multiline_doc_comments</api:name>
+    </api:function>
+
+  </info>
+  <title>test_multiline_doc_comments</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_multiline_doc_comments():void {
+    // Gjs wrapper for regress_test_multiline_doc_comments()
+}
+</code></synopsis>
+
+  
+    <p>This is a function.</p><p>It has multiple lines in the documentation.</p><p>The sky is blue.</p><p>You will give me your credit card number.</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page
new file mode 100644
index 0000000..087a248
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<page id="Regress.test_nested_parameter"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_nested_parameter</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_nested_parameter</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_nested_parameter(a:Number):void {
+    // Gjs wrapper for regress_test_nested_parameter()
+}
+</code></synopsis>
+
+  
+    <p>&lt;informaltable&gt;
+  &lt;tgroup cols="3"&gt;
+    &lt;thead&gt;
+      &lt;row&gt;
+        &lt;entry&gt;Syntax&lt;/entry&gt;
+        &lt;entry&gt;Explanation&lt;/entry&gt;
+        &lt;entry&gt;Examples&lt;/entry&gt;
+      &lt;/row&gt;
+    &lt;/thead&gt;
+    &lt;tbody&gt;
+      &lt;row&gt;
+        &lt;entry&gt;rgb(@r, @g, @b)&lt;/entry&gt;
+        &lt;entry&gt;An opaque color; @r, @g, @b can be either integers between
+               0 and 255 or percentages&lt;/entry&gt;
+        &lt;entry&gt;&lt;literallayout&gt;rgb(128, 10, 54)
+rgb(20%, 30%, 0%)&lt;/literallayout&gt;&lt;/entry&gt;
+      &lt;/row&gt;
+      &lt;row&gt;
+        &lt;entry&gt;rgba(@r, @g, @b, <code>a</code>)&lt;/entry&gt;
+        &lt;entry&gt;A translucent color; @r, @g, @b are as in the previous row,
+               <code>a</code> is a floating point number between 0 and 1&lt;/entry&gt;
+        &lt;entry&gt;&lt;literallayout&gt;rgba(255, 255, 0, 0.5)&lt;/literallayout&gt;&lt;/entry&gt;
+      &lt;/row&gt;
+   &lt;/tbody&gt;
+ &lt;/tgroup&gt;
+&lt;/informaltable&gt;</p><p>What we're testing here is that the scanner ignores the <code>a</code> nested inside XML.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>An integer</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page
new file mode 100644
index 0000000..632be61
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_null_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_null_gerror_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_null_gerror_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_null_gerror_callback(callback:Regress.TestCallbackGError):void {
+    // Gjs wrapper for regress_test_null_gerror_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page
new file mode 100644
index 0000000..5266607
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_owned_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_owned_gerror_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackOwnedGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_owned_gerror_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_owned_gerror_callback(callback:Regress.TestCallbackOwnedGError):void {
+    // Gjs wrapper for regress_test_owned_gerror_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page
new file mode 100644
index 0000000..ade0d1e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_short"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gshort</api:type>
+      </api:returns>
+      <api:name>regress_test_short</api:name>
+      <api:arg>
+        <api:type>gshort</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_short</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_short(in:gshort):gshort {
+    // Gjs wrapper for regress_test_short()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page
new file mode 100644
index 0000000..1c44d09
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_simple_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestSimpleCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_simple_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_simple_callback(callback:Regress.TestSimpleCallback):void {
+    // Gjs wrapper for regress_test_simple_callback()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page
new file mode 100644
index 0000000..eead974
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_size"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gsize</api:type>
+      </api:returns>
+      <api:name>regress_test_size</api:name>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_size</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_size(in:gsize):gsize {
+    // Gjs wrapper for regress_test_size()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_skip_unannotated_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_skip_unannotated_callback.page
new file mode 100644
index 0000000..0107162
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_skip_unannotated_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_skip_unannotated_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_skip_unannotated_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_skip_unannotated_callback</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_skip_unannotated_callback(callback:Regress.TestCallback):void {
+    // Gjs wrapper for regress_test_skip_unannotated_callback()
+}
+</code></synopsis>
+
+  
+    <p>Should not emit a warning:
+https://bugzilla.gnome.org/show_bug.cgi?id=685399</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd><p>No annotation here</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page
new file mode 100644
index 0000000..53c9380
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ssize"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gssize</api:type>
+      </api:returns>
+      <api:name>regress_test_ssize</api:name>
+      <api:arg>
+        <api:type>gssize</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ssize</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ssize(in:gssize):gssize {
+    // Gjs wrapper for regress_test_ssize()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page
new file mode 100644
index 0000000..ab2afca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_in</api:name>
+      <api:arg>
+        <api:type>[String]</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_strv_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_strv_in(arr:[String]):Boolean {
+    // Gjs wrapper for regress_test_strv_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page
new file mode 100644
index 0000000..8a025d3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_in_gvalue"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Value</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_in_gvalue</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_in_gvalue</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_strv_in_gvalue():GObject.Value {
+    // Gjs wrapper for regress_test_strv_in_gvalue()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page
new file mode 100644
index 0000000..b9273dd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_strv_out():[String] {
+    // Gjs wrapper for regress_test_strv_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page
new file mode 100644
index 0000000..b785421
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out_c"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out_c</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_out_c</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_strv_out_c():[String] {
+    // Gjs wrapper for regress_test_strv_out_c()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page
new file mode 100644
index 0000000..dcf1931
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out_container"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[String]</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out_container</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_out_container</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_strv_out_container():[String] {
+    // Gjs wrapper for regress_test_strv_out_container()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page
new file mode 100644
index 0000000..a465b61
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_outarg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_outarg</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_outarg</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_strv_outarg():void {
+    // Gjs wrapper for regress_test_strv_outarg()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page
new file mode 100644
index 0000000..f75c9ad
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_timet"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_timet</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_timet</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_timet(in:Number):Number {
+    // Gjs wrapper for regress_test_timet()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page
new file mode 100644
index 0000000..269f16a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_0"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_0</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_torture_signature_0</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_torture_signature_0(x:Number, foo:String, m:Number):void {
+    // Gjs wrapper for regress_test_torture_signature_0()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page
new file mode 100644
index 0000000..7951588
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_1"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Boolean</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_1</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_torture_signature_1</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_torture_signature_1(x:Number, foo:String, m:Number):Boolean {
+    // Gjs wrapper for regress_test_torture_signature_1()
+}
+</code></synopsis>
+
+  
+    <p>This function throws an error if m is odd.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page
new file mode 100644
index 0000000..4504cf4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_2</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_torture_signature_2</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_torture_signature_2(x:Number, callback:Regress.TestCallbackUserData, foo:String, m:Number):void {
+    // Gjs wrapper for regress_test_torture_signature_2()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page
new file mode 100644
index 0000000..0c514f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_uint</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_uint(in:Number):Number {
+    // Gjs wrapper for regress_test_uint()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page
new file mode 100644
index 0000000..dc0601f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint16"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint16</api:type>
+      </api:returns>
+      <api:name>regress_test_uint16</api:name>
+      <api:arg>
+        <api:type>guint16</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint16</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_uint16(in:guint16):guint16 {
+    // Gjs wrapper for regress_test_uint16()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page
new file mode 100644
index 0000000..282967d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint32"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint32</api:type>
+      </api:returns>
+      <api:name>regress_test_uint32</api:name>
+      <api:arg>
+        <api:type>guint32</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint32</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_uint32(in:guint32):guint32 {
+    // Gjs wrapper for regress_test_uint32()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page
new file mode 100644
index 0000000..ec408e6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint64"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_uint64</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint64</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_uint64(in:Number):Number {
+    // Gjs wrapper for regress_test_uint64()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page
new file mode 100644
index 0000000..77ac333
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint8</api:type>
+      </api:returns>
+      <api:name>regress_test_uint8</api:name>
+      <api:arg>
+        <api:type>guint8</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint8</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_uint8(in:guint8):guint8 {
+    // Gjs wrapper for regress_test_uint8()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page
new file mode 100644
index 0000000..4eb5f81
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ulong"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Number</api:type>
+      </api:returns>
+      <api:name>regress_test_ulong</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ulong</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ulong(in:Number):Number {
+    // Gjs wrapper for regress_test_ulong()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page
new file mode 100644
index 0000000..23a7830
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_unichar"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_unichar</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_unichar</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_unichar(in:String):String {
+    // Gjs wrapper for regress_test_unichar()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page
new file mode 100644
index 0000000..0bbc173
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_unsigned_enum_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_unsigned_enum_param</api:name>
+      <api:arg>
+        <api:type>Regress.TestEnumUnsigned</api:type>
+        <api:name>e</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_unsigned_enum_param</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_unsigned_enum_param(e:Regress.TestEnumUnsigned):String {
+    // Gjs wrapper for regress_test_unsigned_enum_param()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>e :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page
new file mode 100644
index 0000000..3a7b260
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ushort"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gushort</api:type>
+      </api:returns>
+      <api:name>regress_test_ushort</api:name>
+      <api:arg>
+        <api:type>gushort</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ushort</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_ushort(in:gushort):gushort {
+    // Gjs wrapper for regress_test_ushort()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page
new file mode 100644
index 0000000..9bfb3fd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_const_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_const_in</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_const_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_const_in(in:String):void {
+    // Gjs wrapper for regress_test_utf8_const_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page
new file mode 100644
index 0000000..d8c7655
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_const_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_const_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_const_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_const_return():String {
+    // Gjs wrapper for regress_test_utf8_const_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>UTF-8 string</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page
new file mode 100644
index 0000000..df85d8a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_inout"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_inout</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>inout</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_inout</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_inout(inout:String):void {
+    // Gjs wrapper for regress_test_utf8_inout()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>inout :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page
new file mode 100644
index 0000000..d4a0084
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_nonconst_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_nonconst_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_nonconst_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_nonconst_return():String {
+    // Gjs wrapper for regress_test_utf8_nonconst_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>UTF-8 string</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page
new file mode 100644
index 0000000..15c583b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_null_in</api:name>
+      <api:arg>
+        <api:type>String</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_null_in</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_null_in(in:String):void {
+    // Gjs wrapper for regress_test_utf8_null_in()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page
new file mode 100644
index 0000000..af8db3a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_null_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_null_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_null_out():void {
+    // Gjs wrapper for regress_test_utf8_null_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page
new file mode 100644
index 0000000..9692dc6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_out():void {
+    // Gjs wrapper for regress_test_utf8_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page
new file mode 100644
index 0000000..4e2cf0e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out_nonconst_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out_nonconst_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_out_nonconst_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_out_nonconst_return():String {
+    // Gjs wrapper for regress_test_utf8_out_nonconst_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>a copy of "first"</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page
new file mode 100644
index 0000000..43e35d1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_out_out</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_utf8_out_out():void {
+    // Gjs wrapper for regress_test_utf8_out_out()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_get_fundamental_object.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_get_fundamental_object.page
new file mode 100644
index 0000000..e3b85a8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_get_fundamental_object.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_get_fundamental_object"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestFundamentalObject</api:type>
+      </api:returns>
+      <api:name>regress_test_value_get_fundamental_object</api:name>
+      <api:arg>
+        <api:type>GObject.Value</api:type>
+        <api:name>value</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_value_get_fundamental_object</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_value_get_fundamental_object(value:GObject.Value):Regress.TestFundamentalObject {
+    // Gjs wrapper for regress_test_value_get_fundamental_object()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>value :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page
new file mode 100644
index 0000000..542af0b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Value</api:type>
+      </api:returns>
+      <api:name>regress_test_value_return</api:name>
+      <api:arg>
+        <api:type>Number</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_value_return</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_value_return(i:Number):GObject.Value {
+    // Gjs wrapper for regress_test_value_return()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd><p>an int</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the int wrapped in a GValue.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_set_fundamental_object.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_set_fundamental_object.page
new file mode 100644
index 0000000..1c8b445
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_set_fundamental_object.page
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_set_fundamental_object"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_value_set_fundamental_object</api:name>
+      <api:arg>
+        <api:type>GObject.Value</api:type>
+        <api:name>value</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestFundamentalObject</api:type>
+        <api:name>fundamental_object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_value_set_fundamental_object</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_value_set_fundamental_object(value:GObject.Value, fundamental_object:Regress.TestFundamentalObject):void {
+    // Gjs wrapper for regress_test_value_set_fundamental_object()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>value :</p></dt>
+<dd></dd>
+<dt><p>fundamental_object :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page
new file mode 100644
index 0000000..d3cfc1d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.test_versioning"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_versioning</api:name>
+    </api:function>
+
+  </info>
+  <title>test_versioning</title>
+  
+<synopsis><code mime="text/x-gjs">
+function test_versioning():void {
+    // Gjs wrapper for regress_test_versioning()
+}
+</code></synopsis>
+
+  
+    
+  
+  
+    <p>Since 1.32.1</p>
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/doctool/DocExamples-1.0-Gjs-expected/index.page b/tests/scanner/Regress-1.0-Gjs-expected/index.page
similarity index 100%
rename from tests/doctool/DocExamples-1.0-Gjs-expected/index.page
rename to tests/scanner/Regress-1.0-Gjs-expected/index.page
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page b/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page
new file mode 100644
index 0000000..ebe71b0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_DEFINE.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_DEFINE"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_DEFINE</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_LARGE.page b/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_LARGE.page
new file mode 100644
index 0000000..4b38cc0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_LARGE.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_LARGE"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_LARGE</title>
+  
+  
+  
+    <p>Constant to define a calculated large value</p>
+  
+  
+    <p>Since 1.4</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page b/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page
new file mode 100644
index 0000000..d6c8e76
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.ANNOTATION_CALCULATED_LARGE_DIV.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.ANNOTATION_CALCULATED_LARGE_DIV"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ANNOTATION_CALCULATED_LARGE_DIV</title>
+  
+  
+  
+    <p>Constant to define a calculated large value</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page
new file mode 100644
index 0000000..dff139f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.ATestError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.ATestError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ATestError.CODE0 :</p></dt>
+<dd></dd>
+<dt><p>ATestError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>ATestError.CODE2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page
new file mode 100644
index 0000000..2229245
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AliasedTestBoxed"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AliasedTestBoxed</title>
+  
+  
+  
+    <p>Typedef TestBoxed to test caller-allocates correctness</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page
new file mode 100644
index 0000000..8cbc832
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationBitfield"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationBitfield</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page
new file mode 100644
index 0000000..30f950c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationCallback</title>
+  
+  
+  
+    <p>This is a callback.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page
new file mode 100644
index 0000000..506ceff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationForeachFunc"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationForeachFunc</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page
new file mode 100644
index 0000000..3f9409e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationListCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationListCallback</title>
+  
+  
+  
+    <p>This is a callback taking a list.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page
new file mode 100644
index 0000000..b2dc717
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationNotifyFunc"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationNotifyFunc</title>
+  
+  
+  
+    <p>This is a callback with a 'closure' argument that is not named
+'user_data' and hence has to be annotated.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page
new file mode 100644
index 0000000..221c269
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-attribute-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">attribute-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::attribute-signal</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(annotation_object, arg1, arg2, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>This signal tests a signal with attributes.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>arg1 :</p></dt>
+<dd><p>a value</p></dd>
+<dt><p>arg2 :</p></dt>
+<dd><p>another value</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>gchar* <p>the return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
new file mode 100644
index 0000000..03b488b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-doc-empty-arg-parsing"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">doc-empty-arg-parsing</title>
+
+  </info>
+  <title>Regress.AnnotationObject::doc-empty-arg-parsing</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(annotation_object, arg1, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>This signal tests an empty document argument (<code>arg1</code>)</p>
+  
+  
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>arg1 :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page
new file mode 100644
index 0000000..f526ea9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-function-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">function-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:function-property</title>
+  
+<synopsis><code mime="text/x-python">
+"function-property"             Regress.AnnotationCallback                : Read / Write / Construct
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page
new file mode 100644
index 0000000..d0da8d6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-list-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">list-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::list-signal</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(annotation_object, list, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>This is a signal which takes a list of strings, but it's not
+known by GObject as it's only marked as G_TYPE_POINTER</p>
+  
+  
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>list :</p></dt>
+<dd><p>a list of strings</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page
new file mode 100644
index 0000000..97391bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-string-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">string-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:string-property</title>
+  
+<synopsis><code mime="text/x-python">
+"string-property"             unicode                : Read / Write / Construct
+</code></synopsis>
+
+  
+    <p>This is a property which is a string</p>
+  
+  
+    <p>Since 1.0</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page
new file mode 100644
index 0000000..66e2ee6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-string-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <title type="link" role="topic">string-signal</title>
+
+  </info>
+  <title>Regress.AnnotationObject::string-signal</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(annotation_object, string, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>This is a signal which has a broken signal handler,
+it says it's pointer but it's actually a string.</p>
+  
+  
+    <p>Since 1.0</p>
+  
+  
+<dl>
+<dt><p>annotation_object :</p></dt>
+<dd><p>instance of Regress.AnnotationObject that is emitting the signal</p></dd>
+<dt><p>string :</p></dt>
+<dd><p>a string</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page
new file mode 100644
index 0000000..db243c6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject-tab-property"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <title type="link" role="topic">tab-property</title>
+
+  </info>
+  <title>Regress.AnnotationObject:tab-property</title>
+  
+<synopsis><code mime="text/x-python">
+"tab-property"             unicode                : Read / Write / Construct
+</code></synopsis>
+
+  
+    <p>This is a property regress_annotation intentionally indented with a mix
+of tabs and strings to test the tab handling capabilities of the scanner.</p>
+  
+  
+    <p>Since 1.2</p>
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page
new file mode 100644
index 0000000..7d94a77
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.allow_none"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_allow_none</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>somearg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.allow_none</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, unicode)
+ returns(GObject.Object)
+def allow_none(self, somearg):
+    # Python wrapper for regress_annotation_object_allow_none()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>somearg :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>None</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page
new file mode 100644
index 0000000..157739d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.calleeowns"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_calleeowns</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject.Object</api:type>
+        <api:name>toown</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.calleeowns</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, GObject.Object)
+ returns(int)
+def calleeowns(self, toown):
+    # Python wrapper for regress_annotation_object_calleeowns()
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments; GObject defaults to transfer</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>toown :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page
new file mode 100644
index 0000000..e943682
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.calleesowns"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_calleesowns</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject.Object</api:type>
+        <api:name>toown1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject.Object</api:type>
+        <api:name>toown2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.calleesowns</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, GObject.Object, GObject.Object)
+ returns(int)
+def calleesowns(self, toown1, toown2):
+    # Python wrapper for regress_annotation_object_calleesowns()
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments, one transferred, other not</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>toown1 :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>toown2 :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page
new file mode 100644
index 0000000..31c8d37
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.compute_sum</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, [int])
+ returns(none)
+def compute_sum(self, nums):
+    # Python wrapper for regress_annotation_object_compute_sum()
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page
new file mode 100644
index 0000000..f017eb3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum_n"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum_n</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.compute_sum_n</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, [int], int)
+ returns(none)
+def compute_sum_n(self, nums, n_nums):
+    # Python wrapper for regress_annotation_object_compute_sum_n()
+</code></synopsis>
+
+  
+    <p>Test taking an array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers that are zero-terminated</p></dd>
+<dt><p>n_nums :</p></dt>
+<dd><p>Length of number array</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page
new file mode 100644
index 0000000..c7ae439
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.compute_sum_nz"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_compute_sum_nz</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>nums</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_nums</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.compute_sum_nz</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, [int], int)
+ returns(none)
+def compute_sum_nz(self, nums, n_nums):
+    # Python wrapper for regress_annotation_object_compute_sum_nz()
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>nums :</p></dt>
+<dd><p>Sequence of numbers that are zero-terminated</p></dd>
+<dt><p>n_nums :</p></dt>
+<dd><p>Length of number array</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page
new file mode 100644
index 0000000..66b7406
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.create_object"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_create_object</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.create_object</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(GObject.Object)
+def create_object(self):
+    # Python wrapper for regress_annotation_object_create_object()
+</code></synopsis>
+
+  
+    <p>Test returning a caller-owned object</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page
new file mode 100644
index 0000000..648dc52
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.do_not_use"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_do_not_use</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.do_not_use</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(GObject.Object)
+def do_not_use(self):
+    # Python wrapper for regress_annotation_object_do_not_use()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>None</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page
new file mode 100644
index 0000000..b3fa22d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.extra_annos"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_extra_annos</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.extra_annos</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(none)
+def extra_annos(self):
+    # Python wrapper for regress_annotation_object_extra_annos()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page
new file mode 100644
index 0000000..be20587
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.foreach"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_foreach</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.AnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.foreach</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, Regress.AnnotationForeachFunc, gpointer)
+ returns(none)
+def foreach(self, func, user_data):
+    # Python wrapper for regress_annotation_object_foreach()
+</code></synopsis>
+
+  
+    <p>Test taking a call-scoped callback</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>func :</p></dt>
+<dd><p>Callback to invoke</p></dd>
+<dt><p>user_data :</p></dt>
+<dd><p>Callback user data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page
new file mode 100644
index 0000000..66d4b85
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_hash"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: GObject.Object}</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_hash</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.get_hash</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns({unicode: GObject.Object})
+def get_hash(self):
+    # Python wrapper for regress_annotation_object_get_hash()
+</code></synopsis>
+
+  
+    <p>This is a test for returning a hash table mapping strings to
+objects.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>hash table</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page
new file mode 100644
index 0000000..4b0b3a0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page
@@ -0,0 +1,49 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_objects"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_objects</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.get_objects</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(&lt;list&gt;)
+def get_objects(self):
+    # Python wrapper for regress_annotation_object_get_objects()
+</code></synopsis>
+
+  
+    <p>This is a test for returning a list of objects.
+The list itself should be freed, but not the internal objects,
+intentionally similar example to gtk_container_get_children</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>list of objects</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page
new file mode 100644
index 0000000..818168b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.get_strings"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_get_strings</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.get_strings</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(&lt;list&gt;)
+def get_strings(self):
+    # Python wrapper for regress_annotation_object_get_strings()
+</code></synopsis>
+
+  
+    <p>This is a test for returning a list of strings, where
+each string needs to be freed.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>list of strings</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page
new file mode 100644
index 0000000..328a7ba
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.hidden_self"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_hidden_self</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.hidden_self</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(none)
+def hidden_self(self):
+    # Python wrapper for regress_annotation_object_hidden_self()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page
new file mode 100644
index 0000000..71a0aef
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.in"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_in</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, int)
+ returns(int)
+def in(self, inarg):
+    # Python wrapper for regress_annotation_object_in()
+</code></synopsis>
+
+  
+    <p>This is a test for in arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page
new file mode 100644
index 0000000..7ddf3a7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.inout</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, int)
+ returns(int)
+def inout(self, inoutarg):
+    # Python wrapper for regress_annotation_object_inout()
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page
new file mode 100644
index 0000000..82056c3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout2"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout2</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.inout2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, int)
+ returns(int)
+def inout2(self, inoutarg):
+    # Python wrapper for regress_annotation_object_inout2()
+</code></synopsis>
+
+  
+    <p>This is a second test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page
new file mode 100644
index 0000000..45b8959
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.inout3"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_inout3</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inoutarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.inout3</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, int)
+ returns(int)
+def inout3(self, inoutarg):
+    # Python wrapper for regress_annotation_object_inout3()
+</code></synopsis>
+
+  
+    <p>This is a 3th test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>inoutarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page
new file mode 100644
index 0000000..bb23ba1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_method</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(int)
+def method(self):
+    # Python wrapper for regress_annotation_object_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page
new file mode 100644
index 0000000..73731e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.notrans"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_notrans</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.notrans</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject)
+ returns(GObject.Object)
+def notrans(self):
+    # Python wrapper for regress_annotation_object_notrans()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>An object, not referenced</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page
new file mode 100644
index 0000000..ba69737
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_out</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>outarg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, int)
+ returns(int)
+def out(self, outarg):
+    # Python wrapper for regress_annotation_object_out()
+</code></synopsis>
+
+  
+    <p>This is a test for out arguments</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>outarg :</p></dt>
+<dd><p>This is an argument test</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>an int</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page
new file mode 100644
index 0000000..94313a6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+annotation_object = Regress.AnnotationObject(<link xref='Regress.AnnotationObject-function-property'>function_property</link>=value, <link xref='Regress.AnnotationObject-string-property'>string_property</link>=value, <link xref='Regress.AnnotationObject-tab-property'>tab_property</link>=value)  </code></synopsis>
+
+  
+    <p>This is an object used to test regress_annotations.</p>
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.AnnotationObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page
new file mode 100644
index 0000000..ac28c6f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.parse_args"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_parse_args</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>argc</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>argv</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.parse_args</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, int, [unicode])
+ returns(none)
+def parse_args(self, argc, argv):
+    # Python wrapper for regress_annotation_object_parse_args()
+</code></synopsis>
+
+  
+    <p>Test taking a zero-terminated array with length parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>argc :</p></dt>
+<dd><p>Length of the argument vector</p></dd>
+<dt><p>argv :</p></dt>
+<dd><p>Argument vector</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page
new file mode 100644
index 0000000..8f94916
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[guint8]</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.set_data</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, [guint8], gsize)
+ returns(none)
+def set_data(self, data, length):
+    # Python wrapper for regress_annotation_object_set_data()
+</code></synopsis>
+
+  
+    <p>Test taking a guchar * with a length.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>Length of the data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page
new file mode 100644
index 0000000..70c3e62
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data2"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data2</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[gint8]</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.set_data2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, [gint8], gsize)
+ returns(none)
+def set_data2(self, data, length):
+    # Python wrapper for regress_annotation_object_set_data2()
+</code></synopsis>
+
+  
+    <p>Test taking a gchar * with a length.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>Length of the data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page
new file mode 100644
index 0000000..1a5bb11
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.set_data3"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_set_data3</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[guint8]</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.set_data3</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, [guint8], gsize)
+ returns(none)
+def set_data3(self, data, length):
+    # Python wrapper for regress_annotation_object_set_data3()
+</code></synopsis>
+
+  
+    <p>Test taking a gchar * with a length, overriding the array element
+type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>data :</p></dt>
+<dd><p>The data</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>Length of the data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page
new file mode 100644
index 0000000..5c02dbd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.string_out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_string_out</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>str_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.string_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, unicode)
+ returns(bool)
+def string_out(self, str_out):
+    # Python wrapper for regress_annotation_object_string_out()
+</code></synopsis>
+
+  
+    <p>Test returning a string as an out parameter</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>str_out :</p></dt>
+<dd><p>string return value</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>some boolean</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page
new file mode 100644
index 0000000..2e5bba2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.use_buffer"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_use_buffer</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>guint8</api:type>
+        <api:name>bytes</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.use_buffer</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, guint8)
+ returns(none)
+def use_buffer(self, bytes):
+    # Python wrapper for regress_annotation_object_use_buffer()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="GObject.Object"/></p></dd>
+<dt><p>bytes :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch.page
new file mode 100644
index 0000000..87fbe04
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.watch"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_watch</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.AnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.watch</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, Regress.AnnotationForeachFunc, gpointer)
+ returns(none)
+def watch(self, func, user_data):
+    # Python wrapper for regress_annotation_object_watch()
+</code></synopsis>
+
+  
+    <p>This is here just for the sake of being overriden by its
+<link xref="Regress.AnnotationObject.watch_full"/>.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>func :</p></dt>
+<dd><p>The callback</p></dd>
+<dt><p>user_data :</p></dt>
+<dd><p>The callback data</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page
new file mode 100644
index 0000000..ced0ddc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.watch_full"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_watch_full</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.AnnotationForeachFunc</api:type>
+        <api:name>func</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.DestroyNotify</api:type>
+        <api:name>destroy</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.watch_full</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, Regress.AnnotationForeachFunc, gpointer, GLib.DestroyNotify)
+ returns(none)
+def watch_full(self, func, user_data, destroy):
+    # Python wrapper for regress_annotation_object_watch_full()
+</code></synopsis>
+
+  
+    <p>Test overriding via the "Rename To" regress_annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/></p></dd>
+<dt><p>func :</p></dt>
+<dd><p>The callback</p></dd>
+<dt><p>user_data :</p></dt>
+<dd><p>The callback data</p></dd>
+<dt><p>destroy :</p></dt>
+<dd><p>Destroy notification</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page
new file mode 100644
index 0000000..086223d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationObject.with_voidp"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_object_with_voidp</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>AnnotationObject.with_voidp</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, gpointer)
+ returns(none)
+def with_voidp(self, data):
+    # Python wrapper for regress_annotation_object_with_voidp()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd><p>Opaque pointer handle</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page
new file mode 100644
index 0000000..edc9fd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.AnnotationStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.AnnotationStruct</title>
+  
+  
+  
+    <p>This is a test of an array of object in an field of a struct.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.DOUBLE_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.DOUBLE_CONSTANT.page
new file mode 100644
index 0000000..b1aa32d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.DOUBLE_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.DOUBLE_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.DOUBLE_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page
new file mode 100644
index 0000000..357665d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_DEFINE_SHOULD_BE_EXPOSED.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_DEFINE_SHOULD_BE_EXPOSED"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_DEFINE_SHOULD_BE_EXPOSED</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_PIE_IS_TASTY.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_PIE_IS_TASTY.page
new file mode 100644
index 0000000..7dc308a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_PIE_IS_TASTY.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_PIE_IS_TASTY"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_PIE_IS_TASTY</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_SUCCESS_INT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_SUCCESS_INT.page
new file mode 100644
index 0000000..f20f426
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FOO_SUCCESS_INT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FOO_SUCCESS_INT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FOO_SUCCESS_INT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page
new file mode 100644
index 0000000..34f1ed7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.FooASingle"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooASingle</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooASingle.FOO_SOME_SINGLE_ENUM :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page
new file mode 100644
index 0000000..2dafde0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooAddressType"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooAddressType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooAddressType.INVALID :</p></dt>
+<dd></dd>
+<dt><p>FooAddressType.IPV4 :</p></dt>
+<dd></dd>
+<dt><p>FooAddressType.IPV6 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page
new file mode 100644
index 0000000..8654fb4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect.add"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBRect" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_brect_add</api:name>
+      <api:arg>
+        <api:type>Regress.FooBRect</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.FooBRect</api:type>
+        <api:name>b2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooBRect.add</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooBRect, Regress.FooBRect)
+ returns(none)
+def add(self, b2):
+    # Python wrapper for regress_foo_brect_add()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>b2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page
new file mode 100644
index 0000000..57e2652
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBRect"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBRect</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page
new file mode 100644
index 0000000..63831e7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBUnion"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBUnion</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page
new file mode 100644
index 0000000..b357ea2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_boxed_method</api:name>
+      <api:arg>
+        <api:type>Regress.FooBoxed</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooBoxed.method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooBoxed)
+ returns(none)
+def method(self):
+    # Python wrapper for regress_foo_boxed_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page
new file mode 100644
index 0000000..962300f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBoxed"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBoxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page
new file mode 100644
index 0000000..c93a1f7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBuffer"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooBuffer</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_buffer = Regress.FooBuffer()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      <item>
+        <code>Regress.FooBuffer</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page
new file mode 100644
index 0000000..472d16b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooBuffer.some_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooBuffer" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_buffer_some_method</api:name>
+      <api:arg>
+        <api:type>Regress.FooBuffer</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooBuffer.some_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooBuffer)
+ returns(none)
+def some_method(self):
+    # Python wrapper for regress_foo_buffer_some_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page
new file mode 100644
index 0000000..241296e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page
new file mode 100644
index 0000000..db6a6b0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooDBusData.method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooDBusData" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_dbus_data_method</api:name>
+      <api:arg>
+        <api:type>Regress.FooDBusData</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooDBusData.method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooDBusData)
+ returns(none)
+def method(self):
+    # Python wrapper for regress_foo_dbus_data_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page
new file mode 100644
index 0000000..08ad0d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooDBusData"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooDBusData</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page
new file mode 100644
index 0000000..a46070d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumFullname"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumFullname</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooEnumFullname.ONE :</p></dt>
+<dd></dd>
+<dt><p>FooEnumFullname.TWO :</p></dt>
+<dd></dd>
+<dt><p>FooEnumFullname.THREE :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page
new file mode 100644
index 0000000..2313192
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumNoType"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumNoType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooEnumNoType.UN :</p></dt>
+<dd></dd>
+<dt><p>FooEnumNoType.DEUX :</p></dt>
+<dd></dd>
+<dt><p>FooEnumNoType.TROIS :</p></dt>
+<dd></dd>
+<dt><p>FooEnumNoType.NEUF :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page
new file mode 100644
index 0000000..37510f5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEnumType"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEnumType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooEnumType.ALPHA :</p></dt>
+<dd></dd>
+<dt><p>FooEnumType.BETA :</p></dt>
+<dd></dd>
+<dt><p>FooEnumType.DELTA :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page
new file mode 100644
index 0000000..0877e7c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.FooError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooError.GOOD :</p></dt>
+<dd></dd>
+<dt><p>FooError.BAD :</p></dt>
+<dd></dd>
+<dt><p>FooError.UGLY :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page
new file mode 100644
index 0000000..0b77bcb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEvent"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEvent</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page
new file mode 100644
index 0000000..45cd3a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEventAny"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEventAny</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page
new file mode 100644
index 0000000..7e9ca7d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooEventExpose"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooEventExpose</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page
new file mode 100644
index 0000000..d4db757
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooFlagsNoType"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooFlagsNoType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page
new file mode 100644
index 0000000..e4f3ede
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooFlagsType"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooFlagsType</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page
new file mode 100644
index 0000000..8b7835f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooForeignStruct" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooForeignStruct</api:type>
+      </api:returns>
+      <api:name>regress_foo_foreign_struct_copy</api:name>
+      <api:arg>
+        <api:type>Regress.FooForeignStruct</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooForeignStruct.copy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooForeignStruct)
+ returns(Regress.FooForeignStruct)
+def copy(self):
+    # Python wrapper for regress_foo_foreign_struct_copy()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page
new file mode 100644
index 0000000..06c5793
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooForeignStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooForeignStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page
new file mode 100644
index 0000000..b942b55
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface-do_regress_foo"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooInterface::do_regress_foo</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooInterface, int)
+ returns(none)
+def do_do_regress_foo(self, x):
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page
new file mode 100644
index 0000000..60af844
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface.do_regress_foo"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_interface_do_regress_foo</api:name>
+      <api:arg>
+        <api:type>Regress.FooInterface</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooInterface.do_regress_foo</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooInterface, int)
+ returns(none)
+def do_regress_foo(self, x):
+    # Python wrapper for regress_foo_interface_do_regress_foo()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page
new file mode 100644
index 0000000..bc0b7df
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooInterface</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_interface = Regress.FooInterface()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.FooInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page
new file mode 100644
index 0000000..947a5e9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooInterface.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooInterface" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_interface_static_method</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooInterface.static_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(none)
+def static_method(x):
+    # Python wrapper for regress_foo_interface_static_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-hidden.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-hidden.page
new file mode 100644
index 0000000..b751ddb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-hidden.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-hidden"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">hidden</title>
+
+  </info>
+  <title>Regress.FooObject:hidden</title>
+  
+<synopsis><code mime="text/x-python">
+"hidden"             None                : Read / Write / Construct Only
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page
new file mode 100644
index 0000000..a634e4e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-read_fn"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject::read_fn</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int, int)
+ returns(none)
+def do_read_fn(object, offset, length):
+</code></synopsis>
+
+  
+    <p>Read some stuff.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>offset :</p></dt>
+<dd><p>offset</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>length</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page
new file mode 100644
index 0000000..c663823
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-signal"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="signal"/>
+    <title type="link" role="topic">signal</title>
+
+  </info>
+  <title>Regress.FooObject::signal</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(foo_object, object, p0, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo_object :</p></dt>
+<dd><p>instance of Regress.FooObject that is emitting the signal</p></dd>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>p0 :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>gchar* </dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page
new file mode 100644
index 0000000..ce48885
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-string"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <title type="link" role="topic">string</title>
+
+  </info>
+  <title>Regress.FooObject:string</title>
+  
+<synopsis><code mime="text/x-python">
+"string"             unicode                : Read / Write / Construct
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page
new file mode 100644
index 0000000..1ad7512
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject-virtual_method"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject::virtual_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int)
+ returns(bool)
+def do_virtual_method(object, first_param):
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>first_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page
new file mode 100644
index 0000000..6cb5138
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.a_global_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_a_global_method</api:name>
+      <api:arg>
+        <api:type>Utility.Object</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.a_global_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Utility.Object)
+ returns(none)
+def a_global_method(obj):
+    # Python wrapper for regress_foo_object_a_global_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page
new file mode 100644
index 0000000..a3e39f1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.append_new_stack_layer"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooOtherObject</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_append_new_stack_layer</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.append_new_stack_layer</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int)
+ returns(Regress.FooOtherObject)
+def append_new_stack_layer(self, x):
+    # Python wrapper for regress_foo_object_append_new_stack_layer()
+</code></synopsis>
+
+  
+    <p>This shouldn't be scanned as a constructor.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page
new file mode 100644
index 0000000..a023795
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.dup_name"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_dup_name</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.dup_name</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject)
+ returns(unicode)
+def dup_name(self):
+    # Python wrapper for regress_foo_object_dup_name()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page
new file mode 100644
index 0000000..48d5e59
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.external_type"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Utility.Object</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_external_type</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.external_type</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject)
+ returns(Utility.Object)
+def external_type(self):
+    # Python wrapper for regress_foo_object_external_type()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.FooObject"/></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>None</code> always</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page
new file mode 100644
index 0000000..b1208bd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.get_default"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooSubobject</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_get_default</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.get_default</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(Regress.FooSubobject)
+def get_default():
+    # Python wrapper for regress_foo_object_get_default()
+</code></synopsis>
+
+  
+    <p>This function is intended to match clutter_stage_get_default which
+uses a C sugar return type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The global <link xref="Regress.FooSubobject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page
new file mode 100644
index 0000000..fc87e4a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.get_name"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_get_name</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.get_name</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject)
+ returns(unicode)
+def get_name(self):
+    # Python wrapper for regress_foo_object_get_name()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page
new file mode 100644
index 0000000..20fea24
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.handle_glyph"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_handle_glyph</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.Glyph</api:type>
+        <api:name>glyph</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.handle_glyph</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, Utility.Glyph)
+ returns(none)
+def handle_glyph(self, glyph):
+    # Python wrapper for regress_foo_object_handle_glyph()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>glyph :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page
new file mode 100644
index 0000000..3ee60dd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.is_it_time_yet"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_is_it_time_yet</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>time</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.is_it_time_yet</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int)
+ returns(none)
+def is_it_time_yet(self, time):
+    # Python wrapper for regress_foo_object_is_it_time_yet()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>time :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.new_cookie.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.new_cookie.page
new file mode 100644
index 0000000..aadefdf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.new_cookie.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.new_cookie"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooObjectCookie</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_new_cookie</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>target</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.new_cookie</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, unicode)
+ returns(Regress.FooObjectCookie)
+def new_cookie(self, target):
+    # Python wrapper for regress_foo_object_new_cookie()
+</code></synopsis>
+
+  
+    <p>Not sure why this test is here...</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>target :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page
new file mode 100644
index 0000000..9a63538
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_object = Regress.FooObject(<link xref='Regress.FooObject-hidden'>hidden</link>=value, <link xref='Regress.FooObject-string'>string</link>=value)  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page
new file mode 100644
index 0000000..d3ec000
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.read"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_read</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>offset</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.read</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int, int)
+ returns(none)
+def read(self, offset, length):
+    # Python wrapper for regress_foo_object_read()
+</code></synopsis>
+
+  
+    <p>Read some stuff.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>obj</p></dd>
+<dt><p>offset :</p></dt>
+<dd><p>offset</p></dd>
+<dt><p>length :</p></dt>
+<dd><p>length</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.skipped_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.skipped_method.page
new file mode 100644
index 0000000..7a56e3c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.skipped_method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.skipped_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_skipped_method</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.skipped_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject)
+ returns(none)
+def skipped_method(self):
+    # Python wrapper for regress_foo_object_skipped_method()
+</code></synopsis>
+
+  
+    <p>This is only useful from C.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>obj</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page
new file mode 100644
index 0000000..2212da0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.static_meth"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_static_meth</api:name>
+    </api:function>
+
+  </info>
+  <title>FooObject.static_meth</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(int)
+def static_meth():
+    # Python wrapper for regress_foo_object_static_meth()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.take_all.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.take_all.page
new file mode 100644
index 0000000..be7b23f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.take_all.page
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.take_all"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_take_all</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:varargs/>
+    </api:function>
+
+  </info>
+  <title>FooObject.take_all</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int, <varargs>)
+ returns(none)
+def take_all(self, x, ...):
+    # Python wrapper for regress_foo_object_take_all()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>... :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page
new file mode 100644
index 0000000..702a6e8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.various"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_various</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GType</api:type>
+        <api:name>some_type</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.various</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, gpointer, GType)
+ returns(none)
+def various(self, data, some_type):
+    # Python wrapper for regress_foo_object_various()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>some_type :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page
new file mode 100644
index 0000000..68a9409
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObject.virtual_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_foo_object_virtual_method</api:name>
+      <api:arg>
+        <api:type>Regress.FooObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>first_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooObject.virtual_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooObject, int)
+ returns(bool)
+def virtual_method(self, first_param):
+    # Python wrapper for regress_foo_object_virtual_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>first_param :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page
new file mode 100644
index 0000000..4d9cabc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooObjectCookie"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooObjectCookie</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page
new file mode 100644
index 0000000..111b2ac
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.FooOtherObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooOtherObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_other_object = Regress.FooOtherObject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooOtherObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page
new file mode 100644
index 0000000..ea8bf20
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle.add"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooRectangle" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_rectangle_add</api:name>
+      <api:arg>
+        <api:type>Regress.FooRectangle</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.FooRectangle</api:type>
+        <api:name>r2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooRectangle.add</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooRectangle, Regress.FooRectangle)
+ returns(none)
+def add(self, r2):
+    # Python wrapper for regress_foo_rectangle_add()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>add to this rect</p></dd>
+<dt><p>r2 :</p></dt>
+<dd><p>source rectangle</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.new.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.new.page
new file mode 100644
index 0000000..392f67a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.new.page
@@ -0,0 +1,66 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle.new"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooRectangle" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooRectangle</api:type>
+      </api:returns>
+      <api:name>regress_foo_rectangle_new</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>width</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>height</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooRectangle.new</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, int, int, int)
+ returns(Regress.FooRectangle)
+def new(x, y, width, height):
+    # Python wrapper for regress_foo_rectangle_new()
+</code></synopsis>
+
+  
+    <p>This is a C convenience constructor; we have to (skip)
+it because it's not a boxed type.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>width :</p></dt>
+<dd></dd>
+<dt><p>height :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page
new file mode 100644
index 0000000..521a68b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooRectangle"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooRectangle</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSkippable.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSkippable.page
new file mode 100644
index 0000000..605ccf5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSkippable.page
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSkippable"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSkippable</title>
+  
+  
+  
+    <p>Some type that is only interesting from C and should not be
+exposed to language bindings.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>FooSkippable.ONE :</p></dt>
+<dd><p>a skippable enum value</p></dd>
+<dt><p>FooSkippable.TWO :</p></dt>
+<dd><p>another skippable enum value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page
new file mode 100644
index 0000000..83ca6a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooStackLayer"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooStackLayer</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>FooStackLayer.DESKTOP :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.BOTTOM :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.NORMAL :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.TOP :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.DOCK :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.FULLSCREEN :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.FOCUSED_WINDOW :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.OVERRIDE_REDIRECT :</p></dt>
+<dd></dd>
+<dt><p>FooStackLayer.LAST :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page
new file mode 100644
index 0000000..4088a6c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page
new file mode 100644
index 0000000..bb146ab
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-destroy-event"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="signal"/>
+    <title type="link" role="topic">destroy-event</title>
+
+  </info>
+  <title>Regress.FooSubInterface::destroy-event</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(foo_sub_interface, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo_sub_interface :</p></dt>
+<dd><p>instance of Regress.FooSubInterface that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page
new file mode 100644
index 0000000..5f014df
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-destroy_event"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface::destroy_event</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooSubInterface)
+ returns(none)
+def do_destroy_event(self):
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page
new file mode 100644
index 0000000..fd55d89
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-do_bar"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface::do_bar</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooSubInterface)
+ returns(none)
+def do_do_bar(self):
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page
new file mode 100644
index 0000000..1078dfc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface-do_baz"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface::do_baz</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooSubInterface, GObject.Callback, gpointer)
+ returns(none)
+def do_do_baz(self, callback, user_data):
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page
new file mode 100644
index 0000000..6be01ab
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface.do_bar"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_sub_interface_do_bar</api:name>
+      <api:arg>
+        <api:type>Regress.FooSubInterface</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooSubInterface.do_bar</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooSubInterface)
+ returns(none)
+def do_bar(self):
+    # Python wrapper for regress_foo_sub_interface_do_bar()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page
new file mode 100644
index 0000000..af759a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface.do_baz"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_sub_interface_do_baz</api:name>
+      <api:arg>
+        <api:type>Regress.FooSubInterface</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject.Callback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>FooSubInterface.do_baz</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooSubInterface, GObject.Callback, gpointer)
+ returns(none)
+def do_baz(self, callback, user_data):
+    # Python wrapper for regress_foo_sub_interface_do_baz()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page
new file mode 100644
index 0000000..e4d936a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubInterface</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_sub_interface = Regress.FooSubInterface()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.FooSubInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page
new file mode 100644
index 0000000..c4e1ce2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.FooSubobject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooSubobject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+foo_subobject = Regress.FooSubobject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.FooObject</code>
+      <item>
+        <code>Regress.FooSubobject</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page
new file mode 100644
index 0000000..7ae6ae5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooThingWithArray"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooThingWithArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page
new file mode 100644
index 0000000..06d2e80
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooUnion"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooUnion</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page
new file mode 100644
index 0000000..0471b87
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooUtilityStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooUtilityStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooVarargsCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooVarargsCallback.page
new file mode 100644
index 0000000..d477638
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooVarargsCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooVarargsCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooVarargsCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page b/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page
new file mode 100644
index 0000000..1812249
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.FooXEvent"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.FooXEvent</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.GUINT64_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.GUINT64_CONSTANT.page
new file mode 100644
index 0000000..9a0cd16
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.GUINT64_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.GUINT64_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.GUINT64_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.GUINT64_CONSTANTA.page b/tests/scanner/Regress-1.0-Python-expected/Regress.GUINT64_CONSTANTA.page
new file mode 100644
index 0000000..4faf765
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.GUINT64_CONSTANTA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.GUINT64_CONSTANTA"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.GUINT64_CONSTANTA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.G_GINT64_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.G_GINT64_CONSTANT.page
new file mode 100644
index 0000000..b4a66f6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.G_GINT64_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.G_GINT64_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.G_GINT64_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.INT_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.INT_CONSTANT.page
new file mode 100644
index 0000000..e4df9a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.INT_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.INT_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.INT_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.IntSet.page b/tests/scanner/Regress-1.0-Python-expected/Regress.IntSet.page
new file mode 100644
index 0000000..e285bc2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.IntSet.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.IntSet"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.IntSet</title>
+  
+  
+  
+    <p>Compatibility typedef, like telepathy-glib's TpIntSet</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.LONG_STRING_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.LONG_STRING_CONSTANT.page
new file mode 100644
index 0000000..3c0409a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.LONG_STRING_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.LONG_STRING_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.LONG_STRING_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page b/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page
new file mode 100644
index 0000000..05362e5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.LikeGnomeKeyringPasswordSchema"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.LikeGnomeKeyringPasswordSchema</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.MAXUINT64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.MAXUINT64.page
new file mode 100644
index 0000000..be1afd1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.MAXUINT64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.MAXUINT64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.MAXUINT64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.MININT64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.MININT64.page
new file mode 100644
index 0000000..35c3e58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.MININT64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.MININT64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.MININT64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.Mixed_Case_Constant.page b/tests/scanner/Regress-1.0-Python-expected/Regress.Mixed_Case_Constant.page
new file mode 100644
index 0000000..5ea8d9b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.Mixed_Case_Constant.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.Mixed_Case_Constant"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.Mixed_Case_Constant</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.NEGATIVE_INT_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.NEGATIVE_INT_CONSTANT.page
new file mode 100644
index 0000000..576c690
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.NEGATIVE_INT_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.NEGATIVE_INT_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.NEGATIVE_INT_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page b/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page
new file mode 100644
index 0000000..9af00b5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.PtrArrayAlias"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.PtrArrayAlias</title>
+  
+  
+  
+    <p>Typedef'd GPtrArray for some reason</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.STRING_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.STRING_CONSTANT.page
new file mode 100644
index 0000000..945ba98
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.STRING_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.STRING_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.STRING_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.SkippedStructure.page b/tests/scanner/Regress-1.0-Python-expected/Regress.SkippedStructure.page
new file mode 100644
index 0000000..2e67ac0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.SkippedStructure.page
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<page id="Regress.SkippedStructure"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.SkippedStructure</title>
+  
+  
+  
+    <p>This should be skipped, and moreover, all function which
+use it should be.</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page
new file mode 100644
index 0000000..fea8d58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestABCError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestABCError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestABCError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestABCError.CODE2 :</p></dt>
+<dd></dd>
+<dt><p>TestABCError.CODE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page
new file mode 100644
index 0000000..489f3ff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxed</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_copy</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxed</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.copy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestBoxed)
+ returns(Regress.TestBoxed)
+def copy(self):
+    # Python wrapper for regress_test_boxed_copy()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page
new file mode 100644
index 0000000..68a19e0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed.equals"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_equals</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxed</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestBoxed</api:type>
+        <api:name>other</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxed.equals</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestBoxed, Regress.TestBoxed)
+ returns(bool)
+def equals(self, other):
+    # Python wrapper for regress_test_boxed_equals()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>other :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page
new file mode 100644
index 0000000..c6792c5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxed"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxed</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page
new file mode 100644
index 0000000..f770ecf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedB</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_b_copy</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxedB</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxedB.copy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestBoxedB)
+ returns(Regress.TestBoxedB)
+def copy(self):
+    # Python wrapper for regress_test_boxed_b_copy()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page
new file mode 100644
index 0000000..46cf7c1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedB"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page
new file mode 100644
index 0000000..88dd1a4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedC"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedC</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page
new file mode 100644
index 0000000..84a66e5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestBoxedD</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_copy</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxedD</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.copy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestBoxedD)
+ returns(Regress.TestBoxedD)
+def copy(self):
+    # Python wrapper for regress_test_boxed_d_copy()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page
new file mode 100644
index 0000000..5c37368
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.free"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_free</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxedD</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.free</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestBoxedD)
+ returns(none)
+def free(self):
+    # Python wrapper for regress_test_boxed_d_free()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page
new file mode 100644
index 0000000..af75b8f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD.get_magic"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_boxed_d_get_magic</api:name>
+      <api:arg>
+        <api:type>Regress.TestBoxedD</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestBoxedD.get_magic</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestBoxedD)
+ returns(int)
+def get_magic(self):
+    # Python wrapper for regress_test_boxed_d_get_magic()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page
new file mode 100644
index 0000000..17b3c79
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestBoxedD"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestBoxedD</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page
new file mode 100644
index 0000000..9a219e9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page
new file mode 100644
index 0000000..7ceb2e0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackArray"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page
new file mode 100644
index 0000000..3de1fbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackFull"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackFull</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page
new file mode 100644
index 0000000..1f6f2bd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackGError"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackGError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page
new file mode 100644
index 0000000..906947c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackHashtable"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackHashtable</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page
new file mode 100644
index 0000000..e7397a1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackOwnedGError"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackOwnedGError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page
new file mode 100644
index 0000000..f3047cf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestCallbackUserData"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestCallbackUserData</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page
new file mode 100644
index 0000000..b6f0eb8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestDEFError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestDEFError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestDEFError.CODE0 :</p></dt>
+<dd></dd>
+<dt><p>TestDEFError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestDEFError.CODE2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page
new file mode 100644
index 0000000..3de1bbf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnum"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnum</title>
+  
+  
+  
+    <p>By purpose, not all members have documentation</p>
+  
+  
+  
+  
+<dl>
+<dt><p>TestEnum.VALUE1 :</p></dt>
+<dd><p>value 1</p></dd>
+<dt><p>TestEnum.VALUE2 :</p></dt>
+<dd><p>value 2</p></dd>
+<dt><p>TestEnum.VALUE3 :</p></dt>
+<dd></dd>
+<dt><p>TestEnum.VALUE4 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page
new file mode 100644
index 0000000..625c870
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnumNoGEnum"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnumNoGEnum</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestEnumNoGEnum.EVALUE1 :</p></dt>
+<dd></dd>
+<dt><p>TestEnumNoGEnum.EVALUE2 :</p></dt>
+<dd></dd>
+<dt><p>TestEnumNoGEnum.EVALUE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page
new file mode 100644
index 0000000..3069d8e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<page id="Regress.TestEnumUnsigned"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestEnumUnsigned</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestEnumUnsigned.VALUE1 :</p></dt>
+<dd></dd>
+<dt><p>TestEnumUnsigned.VALUE2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page
new file mode 100644
index 0000000..57a2116
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestError.CODE2 :</p></dt>
+<dd></dd>
+<dt><p>TestError.CODE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page
new file mode 100644
index 0000000..d545197
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFlags"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFlags</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page
new file mode 100644
index 0000000..87520bd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFloating"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFloating</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_floating = Regress.TestFloating()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>GObject.InitiallyUnowned</code>
+      <item>
+        <code>Regress.TestFloating</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page
new file mode 100644
index 0000000..af4623a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_fundamental_object = Regress.TestFundamentalObject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestFundamentalObject</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page
new file mode 100644
index 0000000..243e8fd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject.ref"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestFundamentalObject</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_object_ref</api:name>
+      <api:arg>
+        <api:type>Regress.TestFundamentalObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestFundamentalObject.ref</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestFundamentalObject)
+ returns(Regress.TestFundamentalObject)
+def ref(self):
+    # Python wrapper for regress_test_fundamental_object_ref()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>A new <link xref="Regress.TestFundamentalObject"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page
new file mode 100644
index 0000000..eec1dbf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObject.unref"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_fundamental_object_unref</api:name>
+      <api:arg>
+        <api:type>Regress.TestFundamentalObject</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestFundamentalObject.unref</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestFundamentalObject)
+ returns(none)
+def unref(self):
+    # Python wrapper for regress_test_fundamental_object_unref()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page
new file mode 100644
index 0000000..dfd65ce
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectCopyFunction"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectCopyFunction</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page
new file mode 100644
index 0000000..2b9d965
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalObjectFinalizeFunction"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalObjectFinalizeFunction</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page
new file mode 100644
index 0000000..6f3a246
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestFundamentalSubObject"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestFundamentalSubObject</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_fundamental_sub_object = Regress.TestFundamentalSubObject()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestFundamentalObject</code>
+      <item>
+        <code>Regress.TestFundamentalSubObject</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page
new file mode 100644
index 0000000..5c97095
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.do_foo"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_do_foo</api:name>
+      <api:arg>
+        <api:type>Regress.TestInheritDrawable</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.do_foo</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestInheritDrawable, int)
+ returns(none)
+def do_foo(self, x):
+    # Python wrapper for regress_test_inherit_drawable_do_foo()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
new file mode 100644
index 0000000..1e3d041
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.do_foo_maybe_throw"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_do_foo_maybe_throw</api:name>
+      <api:arg>
+        <api:type>Regress.TestInheritDrawable</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.do_foo_maybe_throw</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestInheritDrawable, int)
+ returns(none)
+def do_foo_maybe_throw(self, x):
+    # Python wrapper for regress_test_inherit_drawable_do_foo_maybe_throw()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page
new file mode 100644
index 0000000..908bdec
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.get_origin"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_get_origin</api:name>
+      <api:arg>
+        <api:type>Regress.TestInheritDrawable</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.get_origin</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestInheritDrawable, int, int)
+ returns(none)
+def get_origin(self, x, y):
+    # Python wrapper for regress_test_inherit_drawable_get_origin()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page
new file mode 100644
index 0000000..f6bb036
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable.get_size"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_inherit_drawable_get_size</api:name>
+      <api:arg>
+        <api:type>Regress.TestInheritDrawable</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>width</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>height</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestInheritDrawable.get_size</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestInheritDrawable, int, int)
+ returns(none)
+def get_size(self, width, height):
+    # Python wrapper for regress_test_inherit_drawable_get_size()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>width :</p></dt>
+<dd></dd>
+<dt><p>height :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page
new file mode 100644
index 0000000..d7ed30b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritDrawable"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritDrawable</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_inherit_drawable = Regress.TestInheritDrawable()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestInheritDrawable</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page
new file mode 100644
index 0000000..deaeea5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInheritPixmapObjectClass"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInheritPixmapObjectClass</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page
new file mode 100644
index 0000000..454ff74
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<page id="Regress.TestInterface"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestInterface</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_interface = Regress.TestInterface()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>Regress.TestInterface</code>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page
new file mode 100644
index 0000000..1a1be53
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-all"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">all</title>
+
+  </info>
+  <title>Regress.TestObj::all</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page
new file mode 100644
index 0000000..3f72a49
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-allow_none_vfunc"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj::allow_none_vfunc</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, Regress.TestObj)
+ returns(none)
+def do_allow_none_vfunc(obj, two):
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>two :</p></dt>
+<dd><p>Another object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page
new file mode 100644
index 0000000..97c7ee6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-bare"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">bare</title>
+
+  </info>
+  <title>Regress.TestObj:bare</title>
+  
+<synopsis><code mime="text/x-python">
+"bare"             GObject.Object                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page
new file mode 100644
index 0000000..e870627
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-boxed"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">boxed</title>
+
+  </info>
+  <title>Regress.TestObj:boxed</title>
+  
+<synopsis><code mime="text/x-python">
+"boxed"             Regress.TestBoxed                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page
new file mode 100644
index 0000000..6c3bca2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-cleanup"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">cleanup</title>
+
+  </info>
+  <title>Regress.TestObj::cleanup</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page
new file mode 100644
index 0000000..8243a45
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-double"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">double</title>
+
+  </info>
+  <title>Regress.TestObj:double</title>
+  
+<synopsis><code mime="text/x-python">
+"double"             float                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page
new file mode 100644
index 0000000..8a05f09
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-first"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">first</title>
+
+  </info>
+  <title>Regress.TestObj::first</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page
new file mode 100644
index 0000000..8ff32c0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-float"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">float</title>
+
+  </info>
+  <title>Regress.TestObj:float</title>
+  
+<synopsis><code mime="text/x-python">
+"float"             float                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page
new file mode 100644
index 0000000..b477bed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-gtype"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">gtype</title>
+
+  </info>
+  <title>Regress.TestObj:gtype</title>
+  
+<synopsis><code mime="text/x-python">
+"gtype"             GType                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page
new file mode 100644
index 0000000..57d37ae
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-hash-table-old"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">hash-table-old</title>
+
+  </info>
+  <title>Regress.TestObj:hash-table-old</title>
+  
+<synopsis><code mime="text/x-python">
+"hash-table-old"             {unicode: gint8}                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page
new file mode 100644
index 0000000..1c5a6ea
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-hash-table"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">hash-table</title>
+
+  </info>
+  <title>Regress.TestObj:hash-table</title>
+  
+<synopsis><code mime="text/x-python">
+"hash-table"             {unicode: gint8}                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page
new file mode 100644
index 0000000..18089ad
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-int"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">int</title>
+
+  </info>
+  <title>Regress.TestObj:int</title>
+  
+<synopsis><code mime="text/x-python">
+"int"             int                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page
new file mode 100644
index 0000000..fe82188
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-list-old"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">list-old</title>
+
+  </info>
+  <title>Regress.TestObj:list-old</title>
+  
+<synopsis><code mime="text/x-python">
+"list-old"             <list>                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page
new file mode 100644
index 0000000..30d452d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-list"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">list</title>
+
+  </info>
+  <title>Regress.TestObj:list</title>
+  
+<synopsis><code mime="text/x-python">
+"list"             <list>                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page
new file mode 100644
index 0000000..b41a407
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-matrix"
+      type="topic"
+      style="vfunc"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj::matrix</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, unicode)
+ returns(int)
+def do_matrix(obj, somestr):
+</code></synopsis>
+
+  
+    <p>This method is virtual.  Notably its name differs from the virtual
+slot name, which makes it useful for testing bindings handle this
+case.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd></dd>
+<dt><p>somestr :</p></dt>
+<dd><p>Meaningless string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page
new file mode 100644
index 0000000..d326c87
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-array-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-array-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-array-prop</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, arr, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>This test signal is like TelepathyGlib's
+ TpChannel:: group-members-changed-detailed:</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>arr :</p></dt>
+<dd><p>numbers</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page
new file mode 100644
index 0000000..38e632a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-foreign-struct"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-foreign-struct</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-foreign-struct</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, cr, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>cr :</p></dt>
+<dd><p>A cairo context.</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page
new file mode 100644
index 0000000..467f995
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-hash-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-hash-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-hash-prop</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, hash, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>This test signal is like TelepathyGlib's
+ TpAccount::status-changed</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>hash :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page
new file mode 100644
index 0000000..357847b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-int64-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-int64-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-int64-prop</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, i, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>You can use this with regress_test_obj_emit_sig_with_int64, or raise from
+the introspection client langage.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>gint64 </dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page
new file mode 100644
index 0000000..7f2bd5c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-intarray-ret"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-intarray-ret</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-intarray-ret</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, i, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page
new file mode 100644
index 0000000..a410605
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-obj"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-obj</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-obj</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, obj, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>Test transfer none GObject as a param (tests refcounting).
+Use with regress_test_obj_emit_sig_with_obj</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>obj :</p></dt>
+<dd><p>A newly created RegressTestObj</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page
new file mode 100644
index 0000000..b6b5b25
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-strv"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-strv</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-strv</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, strs, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>Test GStrv as a param.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>strs :</p></dt>
+<dd><p>strings</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page
new file mode 100644
index 0000000..5617c5c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-sig-with-uint64-prop"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">sig-with-uint64-prop</title>
+
+  </info>
+  <title>Regress.TestObj::sig-with-uint64-prop</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, i, user_param1, ...)
+</code></synopsis>
+
+  
+    <p>You can use this with regress_test_obj_emit_sig_with_uint64, or raise from
+the introspection client langage.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>i :</p></dt>
+<dd><p>an integer</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+<dt><p>Returns :</p></dt>
+<dd>guint64 </dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page
new file mode 100644
index 0000000..345a821
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-string"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <title type="link" role="topic">string</title>
+
+  </info>
+  <title>Regress.TestObj:string</title>
+  
+<synopsis><code mime="text/x-python">
+"string"             unicode                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page
new file mode 100644
index 0000000..bdd3b3e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-test-with-static-scope-arg"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">test-with-static-scope-arg</title>
+
+  </info>
+  <title>Regress.TestObj::test-with-static-scope-arg</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, object, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page
new file mode 100644
index 0000000..74a7454
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-test"
+      type="topic"
+      style="signal"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <title type="link" role="topic">test</title>
+
+  </info>
+  <title>Regress.TestObj::test</title>
+  
+<synopsis><code mime="text/x-python">
+def callback(test_obj, user_param1, ...)
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>test_obj :</p></dt>
+<dd><p>instance of Regress.TestObj that is emitting the signal</p></dd>
+<dt><p>user_param1 :</p></dt>
+<dd><p>first user parameter (if any) specified with the connect() method</p></dd>
+<dt><p>... :</p></dt>
+<dd><p>additional user parameters (if any)</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page
new file mode 100644
index 0000000..a714018
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.do_matrix"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_do_matrix</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>somestr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.do_matrix</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, unicode)
+ returns(int)
+def do_matrix(self, somestr):
+    # Python wrapper for regress_test_obj_do_matrix()
+</code></synopsis>
+
+  
+    <p>This method is virtual.  Notably its name differs from the virtual
+slot name, which makes it useful for testing bindings handle this
+case.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>somestr :</p></dt>
+<dd><p>Meaningless string</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
new file mode 100644
index 0000000..b0eafb0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_foreign_struct"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_foreign_struct</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.emit_sig_with_foreign_struct</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def emit_sig_with_foreign_struct(self):
+    # Python wrapper for regress_test_obj_emit_sig_with_foreign_struct()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page
new file mode 100644
index 0000000..86c6b93
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_int64"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_int64</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.emit_sig_with_int64</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def emit_sig_with_int64(self):
+    # Python wrapper for regress_test_obj_emit_sig_with_int64()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page
new file mode 100644
index 0000000..ccd5ad8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_obj"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_obj</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.emit_sig_with_obj</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def emit_sig_with_obj(self):
+    # Python wrapper for regress_test_obj_emit_sig_with_obj()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page
new file mode 100644
index 0000000..e2f9876
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.emit_sig_with_uint64"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_emit_sig_with_uint64</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.emit_sig_with_uint64</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def emit_sig_with_uint64(self):
+    # Python wrapper for regress_test_obj_emit_sig_with_uint64()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page
new file mode 100644
index 0000000..8cb577f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.forced_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_forced_method</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.forced_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def forced_method(self):
+    # Python wrapper for regress_forced_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page
new file mode 100644
index 0000000..165c467
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.instance_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_instance_method</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.instance_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(int)
+def instance_method(self):
+    # Python wrapper for regress_test_obj_instance_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page
new file mode 100644
index 0000000..e57bcb6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.instance_method_callback"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_instance_method_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.instance_method_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, Regress.TestCallback)
+ returns(none)
+def instance_method_callback(self, callback):
+    # Python wrapper for regress_test_obj_instance_method_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page
new file mode 100644
index 0000000..24c015c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_null_out</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.null_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def null_out(obj):
+    # Python wrapper for regress_test_obj_null_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page
new file mode 100644
index 0000000..2da014f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestObj</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_obj = Regress.TestObj(<link xref='Regress.TestObj-bare'>bare</link>=value, <link xref='Regress.TestObj-boxed'>boxed</link>=value, <link xref='Regress.TestObj-double'>double</link>=value, <link xref='Regress.TestObj-float'>float</link>=value, <link xref='Regress.TestObj-gtype'>gtype</link>=value, <link xref='Regress.TestObj-hash-table'>hash_table</link>=value, <link xref='Regress.TestObj-hash-table-old'>hash_table_old</link>=value, <link xref='Regress.TestObj-int'>int</link>=value, <link xref='Regress.TestObj-list'>list</link>=value, <link xref='Regress.TestObj-list-old'>list_old</link>=value, <link xref='Regress.TestObj-string'>string</link>=value)  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestObj</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page
new file mode 100644
index 0000000..b468173
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.set_bare"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_set_bare</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GObject.Object</api:type>
+        <api:name>bare</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.set_bare</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, GObject.Object)
+ returns(none)
+def set_bare(self, bare):
+    # Python wrapper for regress_test_obj_set_bare()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>bare :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page
new file mode 100644
index 0000000..21f9418
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_inout_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_inout_param</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.skip_inout_param</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int, int, float, int, int, int, int)
+ returns(bool)
+def skip_inout_param(self, a, out_b, c, inout_d, out_sum, num1, num2):
+    # Python wrapper for regress_test_obj_skip_inout_param()
+</code></synopsis>
+
+  
+    <p>Check that the out value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/>.</p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>True</code> if the call succeeds, <code>False</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page
new file mode 100644
index 0000000..b8eab28
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_out_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_out_param</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.skip_out_param</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int, int, float, int, int, int, int)
+ returns(bool)
+def skip_out_param(self, a, out_b, c, inout_d, out_sum, num1, num2):
+    # Python wrapper for regress_test_obj_skip_out_param()
+</code></synopsis>
+
+  
+    <p>Check that the out value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/>.</p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>True</code> if the call succeeds, <code>False</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page
new file mode 100644
index 0000000..57f9167
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_param"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_param</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.skip_param</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int, int, float, int, int, int, int)
+ returns(bool)
+def skip_param(self, a, out_b, c, inout_d, out_sum, num1, num2):
+    # Python wrapper for regress_test_obj_skip_param()
+</code></synopsis>
+
+  
+    <p>Check that a parameter is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/>.</p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>True</code> if the call succeeds, <code>False</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page
new file mode 100644
index 0000000..92d58eb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_return_val"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_return_val</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_b</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>c</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>inout_d</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>out_sum</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num1</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>num2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.skip_return_val</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int, int, float, int, int, int, int)
+ returns(bool)
+def skip_return_val(self, a, out_b, c, inout_d, out_sum, num1, num2):
+    # Python wrapper for regress_test_obj_skip_return_val()
+</code></synopsis>
+
+  
+    <p>Check that the return value is skipped</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.TestObj"/></p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>out_b :</p></dt>
+<dd><p>A return value.</p></dd>
+<dt><p>c :</p></dt>
+<dd><p>Other parameter.</p></dd>
+<dt><p>inout_d :</p></dt>
+<dd><p>Will be incremented.</p></dd>
+<dt><p>out_sum :</p></dt>
+<dd><p>Return value.</p></dd>
+<dt><p>num1 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>num2 :</p></dt>
+<dd><p>Number.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>True</code> if the call succeeds, <code>False</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page
new file mode 100644
index 0000000..5feb315
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.skip_return_val_no_out"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_skip_return_val_no_out</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.skip_return_val_no_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int)
+ returns(bool)
+def skip_return_val_no_out(self, a):
+    # Python wrapper for regress_test_obj_skip_return_val_no_out()
+</code></synopsis>
+
+  
+    <p>Check that the return value is skipped. Succeed if a is nonzero, otherwise
+raise an error.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>a <link xref="Regress.TestObj"/></p></dd>
+<dt><p>a :</p></dt>
+<dd><p>Parameter.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p><code>True</code> if the call succeeds, <code>False</code> if @error is set.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page
new file mode 100644
index 0000000..1294c2a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>float</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_static_method</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.static_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(float)
+def static_method(x):
+    # Python wrapper for regress_test_obj_static_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page
new file mode 100644
index 0000000..3d7d264
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.static_method_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_static_method_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.static_method_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallback)
+ returns(none)
+def static_method_callback(callback):
+    # Python wrapper for regress_test_obj_static_method_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page
new file mode 100644
index 0000000..c4e4e77
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page
@@ -0,0 +1,81 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.torture_signature_0"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_torture_signature_0</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.torture_signature_0</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int, float, int, unicode, int, int)
+ returns(none)
+def torture_signature_0(self, x, y, z, foo, q, m):
+    # Python wrapper for regress_test_obj_torture_signature_0()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page
new file mode 100644
index 0000000..787a5c3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page
@@ -0,0 +1,83 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj.torture_signature_1"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_obj_torture_signature_1</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestObj.torture_signature_1</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj, int, float, int, unicode, int, int)
+ returns(bool)
+def torture_signature_1(self, x, y, z, foo, q, m):
+    # Python wrapper for regress_test_obj_torture_signature_1()
+</code></synopsis>
+
+  
+    <p>This function throws an error if m is odd.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page
new file mode 100644
index 0000000..1d907d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<page id="Regress.TestOtherError"
+      type="topic"
+      style="enum"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestOtherError</title>
+  
+  
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>TestOtherError.CODE1 :</p></dt>
+<dd></dd>
+<dt><p>TestOtherError.CODE2 :</p></dt>
+<dd></dd>
+<dt><p>TestOtherError.CODE3 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page
new file mode 100644
index 0000000..788441a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestPrivateEnum"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestPrivateEnum</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page
new file mode 100644
index 0000000..fa50813
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestPrivateStruct"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestPrivateStruct</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page
new file mode 100644
index 0000000..b4444d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.const_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_const_return</api:name>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedA.const_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(Regress.TestSimpleBoxedA)
+def const_return():
+    # Python wrapper for regress_test_simple_boxed_a_const_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page
new file mode 100644
index 0000000..4976e9a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_copy</api:name>
+      <api:arg>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedA.copy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestSimpleBoxedA)
+ returns(Regress.TestSimpleBoxedA)
+def copy(self):
+    # Python wrapper for regress_test_simple_boxed_a_copy()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page
new file mode 100644
index 0000000..a9f6577
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA.equals"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_a_equals</api:name>
+      <api:arg>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestSimpleBoxedA</api:type>
+        <api:name>other_a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedA.equals</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestSimpleBoxedA, Regress.TestSimpleBoxedA)
+ returns(bool)
+def equals(self, other_a):
+    # Python wrapper for regress_test_simple_boxed_a_equals()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>other_a :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page
new file mode 100644
index 0000000..2a8dd62
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedA"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleBoxedA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page
new file mode 100644
index 0000000..c04d3cd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedB.copy"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSimpleBoxedB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestSimpleBoxedB</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_boxed_b_copy</api:name>
+      <api:arg>
+        <api:type>Regress.TestSimpleBoxedB</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestSimpleBoxedB.copy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestSimpleBoxedB)
+ returns(Regress.TestSimpleBoxedB)
+def copy(self):
+    # Python wrapper for regress_test_simple_boxed_b_copy()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page
new file mode 100644
index 0000000..b775b86
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleBoxedB"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleBoxedB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page
new file mode 100644
index 0000000..61bafb5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSimpleCallback"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSimpleCallback</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page
new file mode 100644
index 0000000..2b609bb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA.clone"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructA" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_a_clone</api:name>
+      <api:arg>
+        <api:type>Regress.TestStructA</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestStructA</api:type>
+        <api:name>a_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestStructA.clone</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestStructA, Regress.TestStructA)
+ returns(none)
+def clone(self, a_out):
+    # Python wrapper for regress_test_struct_a_clone()
+</code></synopsis>
+
+  
+    <p>Make a copy of a RegressTestStructA</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>the structure</p></dd>
+<dt><p>a_out :</p></dt>
+<dd><p>the cloned structure</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page
new file mode 100644
index 0000000..07b1752
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructA</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page
new file mode 100644
index 0000000..d18fcf7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructA.parse"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructA" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_a_parse</api:name>
+      <api:arg>
+        <api:type>Regress.TestStructA</api:type>
+        <api:name>a_out</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>string</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestStructA.parse</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestStructA, unicode)
+ returns(none)
+def parse(a_out, string):
+    # Python wrapper for regress_test_struct_a_parse()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>a_out :</p></dt>
+<dd><p>the structure that is to be filled</p></dd>
+<dt><p>string :</p></dt>
+<dd><p>ignored</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page
new file mode 100644
index 0000000..2a95a23
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructB.clone"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructB" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_b_clone</api:name>
+      <api:arg>
+        <api:type>Regress.TestStructB</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestStructB</api:type>
+        <api:name>b_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestStructB.clone</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestStructB, Regress.TestStructB)
+ returns(none)
+def clone(self, b_out):
+    # Python wrapper for regress_test_struct_b_clone()
+</code></synopsis>
+
+  
+    <p>Make a copy of a RegressTestStructB</p>
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd><p>the structure</p></dd>
+<dt><p>b_out :</p></dt>
+<dd><p>the cloned structure</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page
new file mode 100644
index 0000000..b5b2ff3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructB"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructB</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page
new file mode 100644
index 0000000..1db74ca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructC"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructC</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page
new file mode 100644
index 0000000..cf224e3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructD"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructD</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page
new file mode 100644
index 0000000..75684f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructE"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructE</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page
new file mode 100644
index 0000000..6f77035
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructE__some_union__union"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructE__some_union__union</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page
new file mode 100644
index 0000000..fe5e7bc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructF"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructF</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page
new file mode 100644
index 0000000..ffd3fae
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructFixedArray.frob"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestStructFixedArray" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_struct_fixed_array_frob</api:name>
+      <api:arg>
+        <api:type>Regress.TestStructFixedArray</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestStructFixedArray.frob</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestStructFixedArray)
+ returns(none)
+def frob(self):
+    # Python wrapper for regress_test_struct_fixed_array_frob()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page
new file mode 100644
index 0000000..b5df529
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestStructFixedArray"
+      type="guide"
+      style="record"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestStructFixedArray</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page
new file mode 100644
index 0000000..bc854f4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.instance_method"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_instance_method</api:name>
+      <api:arg>
+        <api:type>Regress.TestSubObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestSubObj.instance_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestSubObj)
+ returns(int)
+def instance_method(self):
+    # Python wrapper for regress_test_sub_obj_instance_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page
new file mode 100644
index 0000000..fef2f91
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestSubObj</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_sub_obj = Regress.TestSubObj()  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestObj</code>
+      <item>
+        <code>Regress.TestSubObj</code>
+      </item>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page
new file mode 100644
index 0000000..fa4dcc1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.TestSubObj.unset_bare"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_sub_obj_unset_bare</api:name>
+      <api:arg>
+        <api:type>Regress.TestSubObj</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestSubObj.unset_bare</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestSubObj)
+ returns(none)
+def unset_bare(self):
+    # Python wrapper for regress_test_sub_obj_unset_bare()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page
new file mode 100644
index 0000000..d815a3f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.TestTypeGUInt64"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestTypeGUInt64</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page
new file mode 100644
index 0000000..5846ac6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x-testbool"
+      type="topic"
+      style="property"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="property"/>
+    <title type="link" role="topic">testbool</title>
+
+  </info>
+  <title>Regress.TestWi8021x:testbool</title>
+  
+<synopsis><code mime="text/x-python">
+"testbool"             bool                : Read / Write
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page
new file mode 100644
index 0000000..c0bffe8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.get_testbool"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_get_testbool</api:name>
+      <api:arg>
+        <api:type>Regress.TestWi8021x</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestWi8021x.get_testbool</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestWi8021x)
+ returns(bool)
+def get_testbool(self):
+    # Python wrapper for regress_test_wi_802_1x_get_testbool()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page
new file mode 100644
index 0000000..67b7eca
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x"
+      type="guide"
+      style="class"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.TestWi8021x</title>
+  
+  <synopsis><code>
+from gi.repository import Regress
+
+test_wi8021x = Regress.TestWi8021x(<link xref='Regress.TestWi8021x-testbool'>testbool</link>=value)  </code></synopsis>
+
+  
+    
+  
+  
+  
+  
+  <synopsis>
+    <title>Hierarchy</title>
+    <tree>
+      <item>
+        <code>GObject.Object</code>
+      <item>
+        <code>Regress.TestWi8021x</code>
+      </item>
+      </item>
+    </tree>
+  </synopsis>
+
+  
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="method" style="linklist">
+    <title>Methods</title>
+  </links>
+  <links type="topic" ui:expanded="true"
+         api:type="function" api:mime="text/python"
+         groups="function" style="linklist">
+    <title>Functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="property" style="linklist">
+    <title>Properties</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="signal" style="linklist">
+    <title>Signals</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="vfunc" style="linklist">
+    <title>Virtual functions</title>
+  </links>
+  <links type="topic" ui:expanded="true" groups="#first #default #last" style="linklist">
+    <title>Other</title>
+  </links>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page
new file mode 100644
index 0000000..ae04363
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.set_testbool"
+      type="topic"
+      style="method"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_set_testbool</api:name>
+      <api:arg>
+        <api:type>Regress.TestWi8021x</api:type>
+        <api:name>self</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>bool</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestWi8021x.set_testbool</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestWi8021x, bool)
+ returns(none)
+def set_testbool(self, v):
+    # Python wrapper for regress_test_wi_802_1x_set_testbool()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>self :</p></dt>
+<dd></dd>
+<dt><p>v :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page
new file mode 100644
index 0000000..3c04ae7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.TestWi8021x.static_method"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="Regress.TestWi8021x" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_wi_802_1x_static_method</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>TestWi8021x.static_method</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def static_method(x):
+    # Python wrapper for regress_test_wi_802_1x_static_method()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.UTF8_CONSTANT.page b/tests/scanner/Regress-1.0-Python-expected/Regress.UTF8_CONSTANT.page
new file mode 100644
index 0000000..8f3f532
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.UTF8_CONSTANT.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.UTF8_CONSTANT"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.UTF8_CONSTANT</title>
+  
+  
+  
+    
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.VaListAlias.page b/tests/scanner/Regress-1.0-Python-expected/Regress.VaListAlias.page
new file mode 100644
index 0000000..bfd52d2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.VaListAlias.page
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<page id="Regress.VaListAlias"
+      type="topic"
+      style="default"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+      <link type="guide" xref="index"/>
+    
+  </info>
+  <title>Regress.VaListAlias</title>
+  
+  
+  
+    <p>Typedef'd va_list for additional reasons</p>
+  
+  
+  
+  
+  
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page b/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page
new file mode 100644
index 0000000..f0476b8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.aliased_caller_alloc"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_aliased_caller_alloc</api:name>
+      <api:arg>
+        <api:type>Regress.AliasedTestBoxed</api:type>
+        <api:name>boxed</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>aliased_caller_alloc</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AliasedTestBoxed)
+ returns(none)
+def aliased_caller_alloc(boxed):
+    # Python wrapper for regress_aliased_caller_alloc()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>boxed :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page
new file mode 100644
index 0000000..f48f724
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_attribute_func"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_annotation_attribute_func</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationObject</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_attribute_func</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationObject, unicode)
+ returns(int)
+def annotation_attribute_func(object, data):
+    # Python wrapper for regress_annotation_attribute_func()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd><p>A <link xref="Regress.AnnotationObject"/>.</p></dd>
+<dt><p>data :</p></dt>
+<dd><p>Some data.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page
new file mode 100644
index 0000000..439bd57
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_custom_destroy"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_custom_destroy</api:name>
+      <api:arg>
+        <api:type>Regress.AnnotationCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.AnnotationNotifyFunc</api:type>
+        <api:name>destroy</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_custom_destroy</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.AnnotationCallback, Regress.AnnotationNotifyFunc, gpointer)
+ returns(none)
+def annotation_custom_destroy(callback, destroy, data):
+    # Python wrapper for regress_annotation_custom_destroy()
+</code></synopsis>
+
+  
+    <p>Test messing up the heuristic of closure/destroy-notification
+detection, and fixing it via regress_annotations.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd><p>Destroy notification</p></dd>
+<dt><p>destroy :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page
new file mode 100644
index 0000000..339ad90
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_get_source_file"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>filename</api:type>
+      </api:returns>
+      <api:name>regress_annotation_get_source_file</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_get_source_file</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(filename)
+def annotation_get_source_file():
+    # Python wrapper for regress_annotation_get_source_file()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>Source file</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page
new file mode 100644
index 0000000..0fc0f5c
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_init"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_init</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>argc</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>argv</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_init</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [unicode])
+ returns(none)
+def annotation_init(argc, argv):
+    # Python wrapper for regress_annotation_init()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>argc :</p></dt>
+<dd><p>The number of args.</p></dd>
+<dt><p>argv :</p></dt>
+<dd><p>The arguments.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page
new file mode 100644
index 0000000..d173a8f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_invalid_regress_annotation"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_invalid_regress_annotation</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_invalid_regress_annotation</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(none)
+def annotation_invalid_regress_annotation(foo):
+    # Python wrapper for regress_annotation_invalid_regress_annotation()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>foo :</p></dt>
+<dd><p>some text (e.g. example) or else</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page
new file mode 100644
index 0000000..774a018
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_ptr_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_ptr_array</api:name>
+      <api:arg>
+        <api:type>[GObject.Value]</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_ptr_array</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([GObject.Value])
+ returns(none)
+def annotation_ptr_array(array):
+    # Python wrapper for regress_annotation_ptr_array()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd><p>the array</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page
new file mode 100644
index 0000000..5902fd0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_return_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_annotation_return_array</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_return_array</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns([unicode])
+def annotation_return_array(length):
+    # Python wrapper for regress_annotation_return_array()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>length :</p></dt>
+<dd><p>Number of return values</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page
new file mode 100644
index 0000000..961a403
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_return_filename"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>filename</api:type>
+      </api:returns>
+      <api:name>regress_annotation_return_filename</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_return_filename</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(filename)
+def annotation_return_filename():
+    # Python wrapper for regress_annotation_return_filename()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An annotated filename</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page
new file mode 100644
index 0000000..67ab741
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_set_source_file"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_set_source_file</api:name>
+      <api:arg>
+        <api:type>filename</api:type>
+        <api:name>fname</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_set_source_file</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(filename)
+ returns(none)
+def annotation_set_source_file(fname):
+    # Python wrapper for regress_annotation_set_source_file()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>fname :</p></dt>
+<dd><p>Source file</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page
new file mode 100644
index 0000000..4f71806
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_space_after_comment_bug631690"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_space_after_comment_bug631690</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_space_after_comment_bug631690</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(none)
+def annotation_space_after_comment_bug631690():
+    # Python wrapper for regress_annotation_space_after_comment_bug631690()
+</code></synopsis>
+
+  
+    <p>Explicitly test having a space after the ** here.</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page
new file mode 100644
index 0000000..a1f859a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_array_length"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_array_length</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_properties</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>properties</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_string_array_length</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [unicode])
+ returns(none)
+def annotation_string_array_length(n_properties, properties):
+    # Python wrapper for regress_annotation_string_array_length()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_properties :</p></dt>
+<dd></dd>
+<dt><p>properties :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page
new file mode 100644
index 0000000..7aff509
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_zero_terminated"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_zero_terminated</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_string_zero_terminated</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def annotation_string_zero_terminated():
+    # Python wrapper for regress_annotation_string_zero_terminated()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>The return value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page
new file mode 100644
index 0000000..d7401ed
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_string_zero_terminated_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_string_zero_terminated_out</api:name>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>annotation_string_zero_terminated_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([unicode])
+ returns(none)
+def annotation_string_zero_terminated_out(out):
+    # Python wrapper for regress_annotation_string_zero_terminated_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page
new file mode 100644
index 0000000..6021039
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_test_parsing_bug630862"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_test_parsing_bug630862</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_test_parsing_bug630862</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GObject.Object)
+def annotation_test_parsing_bug630862():
+    # Python wrapper for regress_annotation_test_parsing_bug630862()
+</code></synopsis>
+
+  
+    <p>See https://bugzilla.gnome.org/show_bug.cgi?id=630862</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>An object, note the colon:in here</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page
new file mode 100644
index 0000000..321cd92
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_transfer_floating"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Object</api:type>
+      </api:returns>
+      <api:name>regress_annotation_transfer_floating</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_transfer_floating</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GObject.Object)
+def annotation_transfer_floating():
+    # Python wrapper for regress_annotation_transfer_floating()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>A floating object</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page
new file mode 100644
index 0000000..046fa11
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.annotation_versioned"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_annotation_versioned</api:name>
+    </api:function>
+
+  </info>
+  <title>annotation_versioned</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(none)
+def annotation_versioned():
+    # Python wrapper for regress_annotation_versioned()
+</code></synopsis>
+
+  
+    
+  
+  
+    <p>Since 0.6</p>
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page b/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page
new file mode 100644
index 0000000..dcaa814
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.atest_error_quark"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Quark</api:type>
+      </api:returns>
+      <api:name>regress_atest_error_quark</api:name>
+    </api:function>
+
+  </info>
+  <title>atest_error_quark</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Quark)
+def atest_error_quark():
+    # Python wrapper for regress_atest_error_quark()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page
new file mode 100644
index 0000000..ef1f614
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_async_ready_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_async_ready_callback</api:name>
+      <api:arg>
+        <api:type>Gio.Cancellable</api:type>
+        <api:name>cancellable</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Gio.AsyncReadyCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_async_ready_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Gio.Cancellable, Gio.AsyncReadyCallback, gpointer)
+ returns(none)
+def foo_async_ready_callback(cancellable, callback, user_data):
+    # Python wrapper for regress_foo_async_ready_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>cancellable :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page
new file mode 100644
index 0000000..dad0e22
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_destroy_notify_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_destroy_notify_callback</api:name>
+      <api:arg>
+        <api:type>Regress.FooCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.DestroyNotify</api:type>
+        <api:name>destroy</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_destroy_notify_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooCallback, gpointer, GLib.DestroyNotify)
+ returns(none)
+def foo_destroy_notify_callback(callback, data, destroy):
+    # Python wrapper for regress_foo_destroy_notify_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>data :</p></dt>
+<dd></dd>
+<dt><p>destroy :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page
new file mode 100644
index 0000000..f7b916e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_init"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_foo_init</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_init</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(int)
+def foo_init():
+    # Python wrapper for regress_foo_init()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page
new file mode 100644
index 0000000..ce521ac
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_method_external_references"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_method_external_references</api:name>
+      <api:arg>
+        <api:type>Utility.Object</api:type>
+        <api:name>object</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.EnumType</api:type>
+        <api:name>e</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.FlagType</api:type>
+        <api:name>f</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Utility.Struct</api:type>
+        <api:name>s</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_method_external_references</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Utility.Object, Utility.EnumType, Utility.FlagType, Utility.Struct)
+ returns(none)
+def foo_method_external_references(object, e, f, s):
+    # Python wrapper for regress_foo_method_external_references()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>object :</p></dt>
+<dd></dd>
+<dt><p>e :</p></dt>
+<dd></dd>
+<dt><p>f :</p></dt>
+<dd></dd>
+<dt><p>s :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page
new file mode 100644
index 0000000..d70d337
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_not_a_constructor_new"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooObject</api:type>
+      </api:returns>
+      <api:name>regress_foo_not_a_constructor_new</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_not_a_constructor_new</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(Regress.FooObject)
+def foo_not_a_constructor_new():
+    # Python wrapper for regress_foo_not_a_constructor_new()
+</code></synopsis>
+
+  
+    <p>This should be scanned as a top-level function, and shouldn't cause
+a "Can't find matching type for constructor" warning.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_skip_me.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_skip_me.page
new file mode 100644
index 0000000..8dc4a72
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_skip_me.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_skip_me"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_skip_me</api:name>
+      <api:arg>
+        <api:type>Regress.FooSkippable</api:type>
+        <api:name>fs</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_skip_me</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooSkippable)
+ returns(none)
+def foo_skip_me(fs):
+    # Python wrapper for regress_foo_skip_me()
+</code></synopsis>
+
+  
+    <p>Does something that's only interesting from C and should not be
+exposed to language bindings.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>fs :</p></dt>
+<dd><p>a <link xref="Regress.FooSkippable"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_some_variant.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_some_variant.page
new file mode 100644
index 0000000..3933beb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_some_variant.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_some_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_some_variant</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>va_list</api:type>
+        <api:name>args</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_some_variant</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, va_list)
+ returns(none)
+def foo_some_variant(x, args):
+    # Python wrapper for regress_foo_some_variant()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>args :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_some_variant_ptr.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_some_variant_ptr.page
new file mode 100644
index 0000000..dbe2d59
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_some_variant_ptr.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_some_variant_ptr"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_some_variant_ptr</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>va_list</api:type>
+        <api:name>args</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_some_variant_ptr</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, va_list)
+ returns(none)
+def foo_some_variant_ptr(x, args):
+    # Python wrapper for regress_foo_some_variant_ptr()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>args :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page
new file mode 100644
index 0000000..c1c4652
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_array</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_test_array</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def foo_test_array():
+    # Python wrapper for regress_foo_test_array()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page
new file mode 100644
index 0000000..61b2a56
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_char_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_char_param</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_char_param</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(none)
+def foo_test_const_char_param(param):
+    # Python wrapper for regress_foo_test_const_char_param()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page
new file mode 100644
index 0000000..d3079e2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_char_retval"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_char_retval</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_char_retval</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(unicode)
+def foo_test_const_char_retval():
+    # Python wrapper for regress_foo_test_const_char_retval()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page
new file mode 100644
index 0000000..9c757d4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_struct_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_struct_param</api:name>
+      <api:arg>
+        <api:type>Regress.FooStruct</api:type>
+        <api:name>param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_struct_param</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooStruct)
+ returns(none)
+def foo_test_const_struct_param(param):
+    # Python wrapper for regress_foo_test_const_struct_param()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page
new file mode 100644
index 0000000..870cca0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_const_struct_retval"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.FooStruct</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_const_struct_retval</api:name>
+    </api:function>
+
+  </info>
+  <title>foo_test_const_struct_retval</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(Regress.FooStruct)
+def foo_test_const_struct_retval():
+    # Python wrapper for regress_foo_test_const_struct_retval()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page
new file mode 100644
index 0000000..f5c7798
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_string_array"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_string_array</api:name>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_string_array</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([unicode])
+ returns(none)
+def foo_test_string_array(array):
+    # Python wrapper for regress_foo_test_string_array()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page
new file mode 100644
index 0000000..4d46cef
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_string_array_with_g"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_string_array_with_g</api:name>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>array</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_string_array_with_g</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([unicode])
+ returns(none)
+def foo_test_string_array_with_g(array):
+    # Python wrapper for regress_foo_test_string_array_with_g()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>array :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page
new file mode 100644
index 0000000..8d79516
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_unsigned_qualifier"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_unsigned_qualifier</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>unsigned_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_unsigned_qualifier</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(none)
+def foo_test_unsigned_qualifier(unsigned_param):
+    # Python wrapper for regress_foo_test_unsigned_qualifier()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>unsigned_param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page
new file mode 100644
index 0000000..97672a0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_unsigned_type"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_unsigned_type</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>unsigned_param</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_unsigned_type</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(none)
+def foo_test_unsigned_type(unsigned_param):
+    # Python wrapper for regress_foo_test_unsigned_type()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>unsigned_param :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback.page
new file mode 100644
index 0000000..3b2f1f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_varargs_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, Regress.FooVarargsCallback)
+ returns(none)
+def foo_test_varargs_callback(i, callback):
+    # Python wrapper for regress_foo_test_varargs_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback2.page
new file mode 100644
index 0000000..3a20a84
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback2.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback2</api:name>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_varargs_callback2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooVarargsCallback)
+ returns(none)
+def foo_test_varargs_callback2(callback):
+    # Python wrapper for regress_foo_test_varargs_callback2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback3.page b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback3.page
new file mode 100644
index 0000000..b2380f3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_varargs_callback3.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.foo_test_varargs_callback3"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_foo_test_varargs_callback3</api:name>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.FooVarargsCallback</api:type>
+        <api:name>callback2</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>foo_test_varargs_callback3</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.FooVarargsCallback, Regress.FooVarargsCallback)
+ returns(none)
+def foo_test_varargs_callback3(callback, callback2):
+    # Python wrapper for regress_foo_test_varargs_callback3()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>callback2 :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page
new file mode 100644
index 0000000..681f45b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.func_obj_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_func_obj_null_in</api:name>
+      <api:arg>
+        <api:type>Regress.TestObj</api:type>
+        <api:name>obj</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>func_obj_null_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestObj)
+ returns(none)
+def func_obj_null_in(obj):
+    # Python wrapper for regress_func_obj_null_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>obj :</p></dt>
+<dd><p>A <link xref="Regress.TestObj"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page
new file mode 100644
index 0000000..816a722
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.global_get_flags_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_global_get_flags_out</api:name>
+      <api:arg>
+        <api:type>Regress.TestFlags</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>global_get_flags_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestFlags)
+ returns(none)
+def global_get_flags_out(v):
+    # Python wrapper for regress_global_get_flags_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>v :</p></dt>
+<dd><p>A flags value</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page b/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page
new file mode 100644
index 0000000..ed40522
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<page id="Regress.has_parameter_named_attrs"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_has_parameter_named_attrs</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[guint32]</api:type>
+        <api:name>attributes</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>has_parameter_named_attrs</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [guint32])
+ returns(none)
+def has_parameter_named_attrs(foo, attributes):
+    # Python wrapper for regress_has_parameter_named_attrs()
+</code></synopsis>
+
+  
+    <p>This test case mirrors GnomeKeyringPasswordSchema from
+libgnome-keyring.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>foo :</p></dt>
+<dd><p>some int</p></dd>
+<dt><p>attributes :</p></dt>
+<dd><p>list of attributes</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page b/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page
new file mode 100644
index 0000000..63ef956
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.introspectable_via_alias"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_introspectable_via_alias</api:name>
+      <api:arg>
+        <api:type>Regress.PtrArrayAlias</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>introspectable_via_alias</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.PtrArrayAlias)
+ returns(none)
+def introspectable_via_alias(data):
+    # Python wrapper for regress_introspectable_via_alias()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.not_introspectable_via_alias.page b/tests/scanner/Regress-1.0-Python-expected/Regress.not_introspectable_via_alias.page
new file mode 100644
index 0000000..174a866
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.not_introspectable_via_alias.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.not_introspectable_via_alias"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_not_introspectable_via_alias</api:name>
+      <api:arg>
+        <api:type>Regress.VaListAlias</api:type>
+        <api:name>ok</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>not_introspectable_via_alias</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.VaListAlias)
+ returns(none)
+def not_introspectable_via_alias(ok):
+    # Python wrapper for regress_not_introspectable_via_alias()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ok :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.random_function_with_skipped_structure.page b/tests/scanner/Regress-1.0-Python-expected/Regress.random_function_with_skipped_structure.page
new file mode 100644
index 0000000..e175dec
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.random_function_with_skipped_structure.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.random_function_with_skipped_structure"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_random_function_with_skipped_structure</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.SkippedStructure</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>random_function_with_skipped_structure</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, Regress.SkippedStructure, float)
+ returns(none)
+def random_function_with_skipped_structure(x, foo, v):
+    # Python wrapper for regress_random_function_with_skipped_structure()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>v :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page b/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page
new file mode 100644
index 0000000..aa72520
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.set_abort_on_error"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_set_abort_on_error</api:name>
+      <api:arg>
+        <api:type>bool</api:type>
+        <api:name>abort_on_error</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>set_abort_on_error</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(bool)
+ returns(none)
+def set_abort_on_error(abort_on_error):
+    # Python wrapper for regress_set_abort_on_error()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>abort_on_error :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page
new file mode 100644
index 0000000..9a170d7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackArray</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackArray)
+ returns(int)
+def test_array_callback(callback):
+    # Python wrapper for regress_test_array_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page
new file mode 100644
index 0000000..a5cb397
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_out_objects"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_out_objects</api:name>
+      <api:arg>
+        <api:type>[Regress.TestObj]</api:type>
+        <api:name>objs</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_out_objects</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([Regress.TestObj])
+ returns(none)
+def test_array_fixed_out_objects(objs):
+    # Python wrapper for regress_test_array_fixed_out_objects()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>objs :</p></dt>
+<dd><p>An array of <link xref="Regress.TestObj"/></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page
new file mode 100644
index 0000000..de526c4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_in</api:name>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_size_int_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([int])
+ returns(int)
+def test_array_fixed_size_int_in(ints):
+    # Python wrapper for regress_test_array_fixed_size_int_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the sum of the items in <code>ints</code></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page
new file mode 100644
index 0000000..9d7ec74
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_out</api:name>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_size_int_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([int])
+ returns(none)
+def test_array_fixed_size_int_out(ints):
+    # Python wrapper for regress_test_array_fixed_size_int_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers ranging from 0 to 4</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page
new file mode 100644
index 0000000..bc33d6d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_fixed_size_int_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[int]</api:type>
+      </api:returns>
+      <api:name>regress_test_array_fixed_size_int_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_array_fixed_size_int_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([int])
+def test_array_fixed_size_int_return():
+    # Python wrapper for regress_test_array_fixed_size_int_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>a list of 5 integers ranging from 0 to 4</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page
new file mode 100644
index 0000000..98f1e19
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint16_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint16_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[gint16]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint16_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [gint16])
+ returns(int)
+def test_array_gint16_in(n_ints, ints):
+    # Python wrapper for regress_test_array_gint16_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page
new file mode 100644
index 0000000..74fb671
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint32_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint32</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint32_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[gint32]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint32_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [gint32])
+ returns(gint32)
+def test_array_gint32_in(n_ints, ints):
+    # Python wrapper for regress_test_array_gint32_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page
new file mode 100644
index 0000000..0f2ad40
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint64_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint64_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint64_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [int])
+ returns(int)
+def test_array_gint64_in(n_ints, ints):
+    # Python wrapper for regress_test_array_gint64_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page
new file mode 100644
index 0000000..4ad4fc7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gint8_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gint8_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[gint8]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gint8_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [gint8])
+ returns(int)
+def test_array_gint8_in(n_ints, ints):
+    # Python wrapper for regress_test_array_gint8_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page
new file mode 100644
index 0000000..bc9057b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_gtype_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_array_gtype_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_types</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[GType]</api:type>
+        <api:name>types</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_gtype_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [GType])
+ returns(unicode)
+def test_array_gtype_in(n_types, types):
+    # Python wrapper for regress_test_array_gtype_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_types :</p></dt>
+<dd></dd>
+<dt><p>types :</p></dt>
+<dd><p>List of types</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>string representation of provided types</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page
new file mode 100644
index 0000000..088ccfa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_full_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[int]</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_full_out</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_full_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns([int])
+def test_array_int_full_out(len):
+    # Python wrapper for regress_test_array_int_full_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>len :</p></dt>
+<dd><p>length of the returned array.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>a new array of integers.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page
new file mode 100644
index 0000000..8bc291b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_in</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [int])
+ returns(int)
+def test_array_int_in(n_ints, ints):
+    # Python wrapper for regress_test_array_int_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd></dd>
+<dt><p>ints :</p></dt>
+<dd><p>List of ints</p></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page
new file mode 100644
index 0000000..881cc86
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_inout"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_inout</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_inout</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [int])
+ returns(none)
+def test_array_int_inout(n_ints, ints):
+    # Python wrapper for regress_test_array_int_inout()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd><p>the length of <code>ints</code></p></dd>
+<dt><p>ints :</p></dt>
+<dd><p>a list of integers whose items will be increased by 1, except the first that will be dropped</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page
new file mode 100644
index 0000000..39542be
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_none_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[int]</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_none_out</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_none_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns([int])
+def test_array_int_none_out(len):
+    # Python wrapper for regress_test_array_int_none_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>len :</p></dt>
+<dd><p>length of the returned array.</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>a static array of integers.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page
new file mode 100644
index 0000000..1e8007f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_null_in</api:name>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_null_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([int], int)
+ returns(none)
+def test_array_int_null_in(arr, len):
+    # Python wrapper for regress_test_array_int_null_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>len :</p></dt>
+<dd><p>length</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page
new file mode 100644
index 0000000..894a37e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_null_out</api:name>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>len</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_null_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([int], int)
+ returns(none)
+def test_array_int_null_out(arr, len):
+    # Python wrapper for regress_test_array_int_null_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>len :</p></dt>
+<dd><p>length</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page
new file mode 100644
index 0000000..3bfad94
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_array_int_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_array_int_out</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>n_ints</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>[int]</api:type>
+        <api:name>ints</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_array_int_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, [int])
+ returns(none)
+def test_array_int_out(n_ints, ints):
+    # Python wrapper for regress_test_array_int_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>n_ints :</p></dt>
+<dd><p>the length of <code>ints</code></p></dd>
+<dt><p>ints :</p></dt>
+<dd><p>a list of 5 integers, from 0 to 4 in consecutive order</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page
new file mode 100644
index 0000000..39a24a2
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_async_ready_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_async_ready_callback</api:name>
+      <api:arg>
+        <api:type>Gio.AsyncReadyCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_async_ready_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Gio.AsyncReadyCallback)
+ returns(none)
+def test_async_ready_callback(callback):
+    # Python wrapper for regress_test_async_ready_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page
new file mode 100644
index 0000000..e7217be
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean</api:name>
+      <api:arg>
+        <api:type>bool</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_boolean</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(bool)
+ returns(bool)
+def test_boolean(in):
+    # Python wrapper for regress_test_boolean()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page
new file mode 100644
index 0000000..0f7783a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean_false"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean_false</api:name>
+      <api:arg>
+        <api:type>bool</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_boolean_false</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(bool)
+ returns(bool)
+def test_boolean_false(in):
+    # Python wrapper for regress_test_boolean_false()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page
new file mode 100644
index 0000000..65fec5e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_boolean_true"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_boolean_true</api:name>
+      <api:arg>
+        <api:type>bool</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_boolean_true</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(bool)
+ returns(bool)
+def test_boolean_true(in):
+    # Python wrapper for regress_test_boolean_true()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page
new file mode 100644
index 0000000..dfebfd0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_context_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo.Context</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_context_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_context_full_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(cairo.Context)
+def test_cairo_context_full_return():
+    # Python wrapper for regress_test_cairo_context_full_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page
new file mode 100644
index 0000000..922330d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_context_none_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_context_none_in</api:name>
+      <api:arg>
+        <api:type>cairo.Context</api:type>
+        <api:name>context</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_cairo_context_none_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(cairo.Context)
+ returns(none)
+def test_cairo_context_none_in(context):
+    # Python wrapper for regress_test_cairo_context_none_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>context :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page
new file mode 100644
index 0000000..1b32629
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_full_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_full_out</api:name>
+      <api:arg>
+        <api:type>cairo.Surface</api:type>
+        <api:name>surface</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_full_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(cairo.Surface)
+ returns(none)
+def test_cairo_surface_full_out(surface):
+    # Python wrapper for regress_test_cairo_surface_full_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>surface :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page
new file mode 100644
index 0000000..1cfa151
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo.Surface</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_full_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(cairo.Surface)
+def test_cairo_surface_full_return():
+    # Python wrapper for regress_test_cairo_surface_full_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page
new file mode 100644
index 0000000..ad456c1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_none_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_none_in</api:name>
+      <api:arg>
+        <api:type>cairo.Surface</api:type>
+        <api:name>surface</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_none_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(cairo.Surface)
+ returns(none)
+def test_cairo_surface_none_in(surface):
+    # Python wrapper for regress_test_cairo_surface_none_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>surface :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page
new file mode 100644
index 0000000..4e5dd40
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_cairo_surface_none_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>cairo.Surface</api:type>
+      </api:returns>
+      <api:name>regress_test_cairo_surface_none_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_cairo_surface_none_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(cairo.Surface)
+def test_cairo_surface_none_return():
+    # Python wrapper for regress_test_cairo_surface_none_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page
new file mode 100644
index 0000000..5da4505
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallback)
+ returns(int)
+def test_callback(callback):
+    # Python wrapper for regress_test_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page
new file mode 100644
index 0000000..8ffd966
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_async"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_async</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_async</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackUserData, gpointer)
+ returns(none)
+def test_callback_async(callback, user_data):
+    # Python wrapper for regress_test_callback_async()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page
new file mode 100644
index 0000000..fed6631
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_destroy_notify"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_destroy_notify</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.DestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_destroy_notify</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackUserData, gpointer, GLib.DestroyNotify)
+ returns(int)
+def test_callback_destroy_notify(callback, user_data, notify):
+    # Python wrapper for regress_test_callback_destroy_notify()
+</code></synopsis>
+
+  
+    <p>Notified - callback persists until a DestroyNotify delegate
+is invoked.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page
new file mode 100644
index 0000000..a343923
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_destroy_notify_no_user_data"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_destroy_notify_no_user_data</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.DestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_destroy_notify_no_user_data</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackUserData, GLib.DestroyNotify)
+ returns(int)
+def test_callback_destroy_notify_no_user_data(callback, notify):
+    # Python wrapper for regress_test_callback_destroy_notify_no_user_data()
+</code></synopsis>
+
+  
+    <p>Adds a scope notified callback with no user data. This can invoke an error
+condition in bindings which needs to be tested.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page
new file mode 100644
index 0000000..459bd47
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_thaw_async"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_thaw_async</api:name>
+    </api:function>
+
+  </info>
+  <title>test_callback_thaw_async</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(int)
+def test_callback_thaw_async():
+    # Python wrapper for regress_test_callback_thaw_async()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page
new file mode 100644
index 0000000..24c45e9
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_thaw_notifications"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_thaw_notifications</api:name>
+    </api:function>
+
+  </info>
+  <title>test_callback_thaw_notifications</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(int)
+def test_callback_thaw_notifications():
+    # Python wrapper for regress_test_callback_thaw_notifications()
+</code></synopsis>
+
+  
+    <p>Invokes all callbacks installed by #test_callback_destroy_notify(),
+adding up their return values, and removes them, invoking the
+corresponding destroy notfications.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>Sum of the return values of the invoked callbacks.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page
new file mode 100644
index 0000000..2b03a8f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<page id="Regress.test_callback_user_data"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_callback_user_data</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_callback_user_data</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackUserData, gpointer)
+ returns(int)
+def test_callback_user_data(callback, user_data):
+    # Python wrapper for regress_test_callback_user_data()
+</code></synopsis>
+
+  
+    <p>Call - callback parameter persists for the duration of the method
+call and can be released on return.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page
new file mode 100644
index 0000000..a3290e5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_closure</api:name>
+      <api:arg>
+        <api:type>GObject.Closure</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_closure</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GObject.Closure)
+ returns(int)
+def test_closure(closure):
+    # Python wrapper for regress_test_closure()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page
new file mode 100644
index 0000000..c766153
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure_one_arg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_closure_one_arg</api:name>
+      <api:arg>
+        <api:type>GObject.Closure</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>arg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_closure_one_arg</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GObject.Closure, int)
+ returns(int)
+def test_closure_one_arg(closure, arg):
+    # Python wrapper for regress_test_closure_one_arg()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd></dd>
+<dt><p>arg :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page
new file mode 100644
index 0000000..2151555
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<page id="Regress.test_closure_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_closure_variant</api:name>
+      <api:arg>
+        <api:type>GObject.Closure</api:type>
+        <api:name>closure</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.Variant</api:type>
+        <api:name>arg</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_closure_variant</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GObject.Closure, GLib.Variant)
+ returns(GLib.Variant)
+def test_closure_variant(closure, arg):
+    # Python wrapper for regress_test_closure_variant()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>closure :</p></dt>
+<dd><p>GClosure which takes one GVariant and returns a GVariant</p></dd>
+<dt><p>arg :</p></dt>
+<dd><p>a GVariant passed as argument to <code>closure</code></p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the return value of <code>closure</code></p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page
new file mode 100644
index 0000000..7e9400e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_date_in_gvalue"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Value</api:type>
+      </api:returns>
+      <api:name>regress_test_date_in_gvalue</api:name>
+    </api:function>
+
+  </info>
+  <title>test_date_in_gvalue</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GObject.Value)
+def test_date_in_gvalue():
+    # Python wrapper for regress_test_date_in_gvalue()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page
new file mode 100644
index 0000000..dc3c910
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_def_error_quark"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Quark</api:type>
+      </api:returns>
+      <api:name>regress_test_def_error_quark</api:name>
+    </api:function>
+
+  </info>
+  <title>test_def_error_quark</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Quark)
+def test_def_error_quark():
+    # Python wrapper for regress_test_def_error_quark()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page
new file mode 100644
index 0000000..986f57a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_double"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>float</api:type>
+      </api:returns>
+      <api:name>regress_test_double</api:name>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_double</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(float)
+ returns(float)
+def test_double(in):
+    # Python wrapper for regress_test_double()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_filename_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_filename_return.page
new file mode 100644
index 0000000..9b259bf
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_filename_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_filename_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_filename_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_filename_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_filename_return():
+    # Python wrapper for regress_test_filename_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>list of strings</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_float.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_float.page
new file mode 100644
index 0000000..5b5bdb8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_float.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_float"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>float</api:type>
+      </api:returns>
+      <api:name>regress_test_float</api:name>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_float</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(float)
+ returns(float)
+def test_float(in):
+    # Python wrapper for regress_test_float()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_garray_container_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_garray_container_return.page
new file mode 100644
index 0000000..132de1f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_garray_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_garray_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_test_garray_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_garray_container_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def test_garray_container_return():
+    # Python wrapper for regress_test_garray_container_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_garray_full_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_garray_full_return.page
new file mode 100644
index 0000000..e7c1b0f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_garray_full_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_garray_full_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_test_garray_full_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_garray_full_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def test_garray_full_return():
+    # Python wrapper for regress_test_garray_full_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gerror_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gerror_callback.page
new file mode 100644
index 0000000..52ef85d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gerror_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_gerror_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gerror_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackGError)
+ returns(none)
+def test_gerror_callback(callback):
+    # Python wrapper for regress_test_gerror_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_container_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_container_return.page
new file mode 100644
index 0000000..676e665
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: unicode}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_container_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: unicode})
+def test_ghash_container_return():
+    # Python wrapper for regress_test_ghash_container_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_everything_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_everything_return.page
new file mode 100644
index 0000000..0cca64b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: unicode}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_everything_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: unicode})
+def test_ghash_everything_return():
+    # Python wrapper for regress_test_ghash_everything_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_gvalue_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_gvalue_in.page
new file mode 100644
index 0000000..39c476b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_gvalue_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_gvalue_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_gvalue_in</api:name>
+      <api:arg>
+        <api:type>{unicode: GObject.Value}</api:type>
+        <api:name>hash</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_gvalue_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts({unicode: GObject.Value})
+ returns(none)
+def test_ghash_gvalue_in(hash):
+    # Python wrapper for regress_test_ghash_gvalue_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>hash :</p></dt>
+<dd><p>the hash table returned by <link xref="Regress.test_ghash_gvalue_return"/>.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_gvalue_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_gvalue_return.page
new file mode 100644
index 0000000..9a94e39
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_gvalue_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_gvalue_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: GObject.Value}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_gvalue_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_gvalue_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: GObject.Value})
+def test_ghash_gvalue_return():
+    # Python wrapper for regress_test_ghash_gvalue_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nested_everything_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nested_everything_return.page
new file mode 100644
index 0000000..6d0a2a7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nested_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nested_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: {unicode: unicode}}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nested_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nested_everything_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: {unicode: unicode}})
+def test_ghash_nested_everything_return():
+    # Python wrapper for regress_test_ghash_nested_everything_return()
+</code></synopsis>
+
+  
+    <p>Specify nested parameterized types directly with the (type ) annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nested_everything_return2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nested_everything_return2.page
new file mode 100644
index 0000000..a6837da
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nested_everything_return2.page
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nested_everything_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: {unicode: unicode}}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nested_everything_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nested_everything_return2</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: {unicode: unicode}})
+def test_ghash_nested_everything_return2():
+    # Python wrapper for regress_test_ghash_nested_everything_return2()
+</code></synopsis>
+
+  
+    <p>Another way of specifying nested parameterized types: using the
+element-type annotation.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_in.page
new file mode 100644
index 0000000..623aee6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_in</api:name>
+      <api:arg>
+        <api:type>{unicode: unicode}</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts({unicode: unicode})
+ returns(none)
+def test_ghash_nothing_in(in):
+    # Python wrapper for regress_test_ghash_nothing_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_in2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_in2.page
new file mode 100644
index 0000000..72e7c66
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_in2.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_in2</api:name>
+      <api:arg>
+        <api:type>{unicode: unicode}</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_in2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts({unicode: unicode})
+ returns(none)
+def test_ghash_nothing_in2(in):
+    # Python wrapper for regress_test_ghash_nothing_in2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_return.page
new file mode 100644
index 0000000..6443843
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: unicode}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: unicode})
+def test_ghash_nothing_return():
+    # Python wrapper for regress_test_ghash_nothing_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_return2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_return2.page
new file mode 100644
index 0000000..5748c38
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_nothing_return2.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: unicode}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_nothing_return2</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: unicode})
+def test_ghash_nothing_return2():
+    # Python wrapper for regress_test_ghash_nothing_return2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_in.page
new file mode 100644
index 0000000..5eff48f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_in</api:name>
+      <api:arg>
+        <api:type>{unicode: unicode}</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_null_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts({unicode: unicode})
+ returns(none)
+def test_ghash_null_in(in):
+    # Python wrapper for regress_test_ghash_null_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_out.page
new file mode 100644
index 0000000..a1c9b5b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_out</api:name>
+      <api:arg>
+        <api:type>{unicode: unicode}</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ghash_null_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts({unicode: unicode})
+ returns(none)
+def test_ghash_null_out(out):
+    # Python wrapper for regress_test_ghash_null_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_return.page
new file mode 100644
index 0000000..0683dbe
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ghash_null_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ghash_null_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>{unicode: unicode}</api:type>
+      </api:returns>
+      <api:name>regress_test_ghash_null_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_ghash_null_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns({unicode: unicode})
+def test_ghash_null_return():
+    # Python wrapper for regress_test_ghash_null_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_container_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_container_return.page
new file mode 100644
index 0000000..6963fb4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_container_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_glist_container_return():
+    # Python wrapper for regress_test_glist_container_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_everything_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_everything_return.page
new file mode 100644
index 0000000..7c1d231
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_everything_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_glist_everything_return():
+    # Python wrapper for regress_test_glist_everything_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_in.page
new file mode 100644
index 0000000..bb93930
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_glist_nothing_in(in):
+    # Python wrapper for regress_test_glist_nothing_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_in2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_in2.page
new file mode 100644
index 0000000..fa87b14
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_in2.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_in2</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_in2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_glist_nothing_in2(in):
+    # Python wrapper for regress_test_glist_nothing_in2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_return.page
new file mode 100644
index 0000000..926d5f5
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_glist_nothing_return():
+    # Python wrapper for regress_test_glist_nothing_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_return2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_return2.page
new file mode 100644
index 0000000..b616387
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_nothing_return2.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_glist_nothing_return2</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_glist_nothing_return2():
+    # Python wrapper for regress_test_glist_nothing_return2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_null_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_null_in.page
new file mode 100644
index 0000000..4da827e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_null_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_null_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_null_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_glist_null_in(in):
+    # Python wrapper for regress_test_glist_null_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_null_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_null_out.page
new file mode 100644
index 0000000..e96a965
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_glist_null_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_glist_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_glist_null_out</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>out_list</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_glist_null_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_glist_null_out(out_list):
+    # Python wrapper for regress_test_glist_null_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out_list :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_container_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_container_return.page
new file mode 100644
index 0000000..e7ab5c1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_container_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_container_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_container_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_container_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_gslist_container_return():
+    # Python wrapper for regress_test_gslist_container_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_everything_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_everything_return.page
new file mode 100644
index 0000000..ea32632
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_everything_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_everything_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_everything_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_everything_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_gslist_everything_return():
+    # Python wrapper for regress_test_gslist_everything_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_in.page
new file mode 100644
index 0000000..1cbf247
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_gslist_nothing_in(in):
+    # Python wrapper for regress_test_gslist_nothing_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_in2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_in2.page
new file mode 100644
index 0000000..3325a41
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_in2.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_in2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_in2</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_in2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_gslist_nothing_in2(in):
+    # Python wrapper for regress_test_gslist_nothing_in2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_return.page
new file mode 100644
index 0000000..0a4a5aa
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_gslist_nothing_return():
+    # Python wrapper for regress_test_gslist_nothing_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_return2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_return2.page
new file mode 100644
index 0000000..4fb5489
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_nothing_return2.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_nothing_return2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>&lt;list&gt;</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_nothing_return2</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gslist_nothing_return2</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(&lt;list&gt;)
+def test_gslist_nothing_return2():
+    # Python wrapper for regress_test_gslist_nothing_return2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_null_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_null_in.page
new file mode 100644
index 0000000..470a6ff
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_null_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_null_in</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_null_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_gslist_null_in(in):
+    # Python wrapper for regress_test_gslist_null_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_null_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_null_out.page
new file mode 100644
index 0000000..6c2dd5b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gslist_null_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gslist_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_gslist_null_out</api:name>
+      <api:arg>
+        <api:type>&lt;list&gt;</api:type>
+        <api:name>out_list</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gslist_null_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(<list>)
+ returns(none)
+def test_gslist_null_out(out_list):
+    # Python wrapper for regress_test_gslist_null_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out_list :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gtype.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gtype.page
new file mode 100644
index 0000000..f98195a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gtype.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gtype"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GType</api:type>
+      </api:returns>
+      <api:name>regress_test_gtype</api:name>
+      <api:arg>
+        <api:type>GType</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_gtype</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GType)
+ returns(GType)
+def test_gtype(in):
+    # Python wrapper for regress_test_gtype()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_as.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_as.page
new file mode 100644
index 0000000..edd0a83
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_as.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_as"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_as</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_as</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Variant)
+def test_gvariant_as():
+    # Python wrapper for regress_test_gvariant_as()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_asv.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_asv.page
new file mode 100644
index 0000000..2e9eeeb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_asv.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_asv"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_asv</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_asv</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Variant)
+def test_gvariant_asv():
+    # Python wrapper for regress_test_gvariant_asv()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_i.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_i.page
new file mode 100644
index 0000000..c47377b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_i.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_i"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_i</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_i</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Variant)
+def test_gvariant_i():
+    # Python wrapper for regress_test_gvariant_i()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_s.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_s.page
new file mode 100644
index 0000000..dfd123f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_s.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_s"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_s</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_s</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Variant)
+def test_gvariant_s():
+    # Python wrapper for regress_test_gvariant_s()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_v.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_v.page
new file mode 100644
index 0000000..1f5d309
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_gvariant_v.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_gvariant_v"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_test_gvariant_v</api:name>
+    </api:function>
+
+  </info>
+  <title>test_gvariant_v</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GLib.Variant)
+def test_gvariant_v():
+    # Python wrapper for regress_test_gvariant_v()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>New variant</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_hash_table_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_hash_table_callback.page
new file mode 100644
index 0000000..6429848
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_hash_table_callback.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_hash_table_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_hash_table_callback</api:name>
+      <api:arg>
+        <api:type>{unicode: int}</api:type>
+        <api:name>data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestCallbackHashtable</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_hash_table_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts({unicode: int}, Regress.TestCallbackHashtable)
+ returns(none)
+def test_hash_table_callback(data, callback):
+    # Python wrapper for regress_test_hash_table_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>data :</p></dt>
+<dd><p>GHashTable that gets passed to callback</p></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int.page
new file mode 100644
index 0000000..22c435f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_int</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_int(in):
+    # Python wrapper for regress_test_int()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int16.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int16.page
new file mode 100644
index 0000000..6f0945a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int16.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int16"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint16</api:type>
+      </api:returns>
+      <api:name>regress_test_int16</api:name>
+      <api:arg>
+        <api:type>gint16</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int16</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gint16)
+ returns(gint16)
+def test_int16(in):
+    # Python wrapper for regress_test_int16()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int32.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int32.page
new file mode 100644
index 0000000..8070a64
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int32.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int32"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint32</api:type>
+      </api:returns>
+      <api:name>regress_test_int32</api:name>
+      <api:arg>
+        <api:type>gint32</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int32</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gint32)
+ returns(gint32)
+def test_int32(in):
+    # Python wrapper for regress_test_int32()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int64.page
new file mode 100644
index 0000000..c9456ad
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int64.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int64"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_int64</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int64</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_int64(in):
+    # Python wrapper for regress_test_int64()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int8.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int8.page
new file mode 100644
index 0000000..73c1749
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int8.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gint8</api:type>
+      </api:returns>
+      <api:name>regress_test_int8</api:name>
+      <api:arg>
+        <api:type>gint8</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int8</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gint8)
+ returns(gint8)
+def test_int8(in):
+    # Python wrapper for regress_test_int8()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int_out_utf8.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int_out_utf8.page
new file mode 100644
index 0000000..9b5b728
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int_out_utf8.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int_out_utf8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_int_out_utf8</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>length</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int_out_utf8</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, unicode)
+ returns(none)
+def test_int_out_utf8(length, in):
+    # Python wrapper for regress_test_int_out_utf8()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>length :</p></dt>
+<dd></dd>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_int_value_arg.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int_value_arg.page
new file mode 100644
index 0000000..2d6d569
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_int_value_arg.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_int_value_arg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_int_value_arg</api:name>
+      <api:arg>
+        <api:type>GObject.Value</api:type>
+        <api:name>v</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_int_value_arg</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GObject.Value)
+ returns(int)
+def test_int_value_arg(v):
+    # Python wrapper for regress_test_int_value_arg()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>v :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_long.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_long.page
new file mode 100644
index 0000000..3b56821
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_long.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_long"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_long</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_long</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_long(in):
+    # Python wrapper for regress_test_long()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_multi_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_multi_callback.page
new file mode 100644
index 0000000..ed15aba
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_multi_callback.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multi_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_multi_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_multi_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallback)
+ returns(int)
+def test_multi_callback(callback):
+    # Python wrapper for regress_test_multi_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_multi_double_args.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_multi_double_args.page
new file mode 100644
index 0000000..b781e79
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_multi_double_args.page
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multi_double_args"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_multi_double_args</api:name>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>one</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>two</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_multi_double_args</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(float, float, float)
+ returns(none)
+def test_multi_double_args(in, one, two):
+    # Python wrapper for regress_test_multi_double_args()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>one :</p></dt>
+<dd></dd>
+<dt><p>two :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_multiline_doc_comments.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_multiline_doc_comments.page
new file mode 100644
index 0000000..6cfdbcd
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_multiline_doc_comments.page
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_multiline_doc_comments"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_multiline_doc_comments</api:name>
+    </api:function>
+
+  </info>
+  <title>test_multiline_doc_comments</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(none)
+def test_multiline_doc_comments():
+    # Python wrapper for regress_test_multiline_doc_comments()
+</code></synopsis>
+
+  
+    <p>This is a function.</p><p>It has multiple lines in the documentation.</p><p>The sky is blue.</p><p>You will give me your credit card number.</p>
+  
+  
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_nested_parameter.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_nested_parameter.page
new file mode 100644
index 0000000..571dd0a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_nested_parameter.page
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<page id="Regress.test_nested_parameter"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_nested_parameter</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>a</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_nested_parameter</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(none)
+def test_nested_parameter(a):
+    # Python wrapper for regress_test_nested_parameter()
+</code></synopsis>
+
+  
+    <p>&lt;informaltable&gt;
+  &lt;tgroup cols="3"&gt;
+    &lt;thead&gt;
+      &lt;row&gt;
+        &lt;entry&gt;Syntax&lt;/entry&gt;
+        &lt;entry&gt;Explanation&lt;/entry&gt;
+        &lt;entry&gt;Examples&lt;/entry&gt;
+      &lt;/row&gt;
+    &lt;/thead&gt;
+    &lt;tbody&gt;
+      &lt;row&gt;
+        &lt;entry&gt;rgb(@r, @g, @b)&lt;/entry&gt;
+        &lt;entry&gt;An opaque color; @r, @g, @b can be either integers between
+               0 and 255 or percentages&lt;/entry&gt;
+        &lt;entry&gt;&lt;literallayout&gt;rgb(128, 10, 54)
+rgb(20%, 30%, 0%)&lt;/literallayout&gt;&lt;/entry&gt;
+      &lt;/row&gt;
+      &lt;row&gt;
+        &lt;entry&gt;rgba(@r, @g, @b, <code>a</code>)&lt;/entry&gt;
+        &lt;entry&gt;A translucent color; @r, @g, @b are as in the previous row,
+               <code>a</code> is a floating point number between 0 and 1&lt;/entry&gt;
+        &lt;entry&gt;&lt;literallayout&gt;rgba(255, 255, 0, 0.5)&lt;/literallayout&gt;&lt;/entry&gt;
+      &lt;/row&gt;
+   &lt;/tbody&gt;
+ &lt;/tgroup&gt;
+&lt;/informaltable&gt;</p><p>What we're testing here is that the scanner ignores the <code>a</code> nested inside XML.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>a :</p></dt>
+<dd><p>An integer</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_null_gerror_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_null_gerror_callback.page
new file mode 100644
index 0000000..ce50e43
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_null_gerror_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_null_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_null_gerror_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_null_gerror_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackGError)
+ returns(none)
+def test_null_gerror_callback(callback):
+    # Python wrapper for regress_test_null_gerror_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_owned_gerror_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_owned_gerror_callback.page
new file mode 100644
index 0000000..93cd72f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_owned_gerror_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_owned_gerror_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_owned_gerror_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallbackOwnedGError</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_owned_gerror_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallbackOwnedGError)
+ returns(none)
+def test_owned_gerror_callback(callback):
+    # Python wrapper for regress_test_owned_gerror_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_short.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_short.page
new file mode 100644
index 0000000..77ddd58
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_short.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_short"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gshort</api:type>
+      </api:returns>
+      <api:name>regress_test_short</api:name>
+      <api:arg>
+        <api:type>gshort</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_short</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gshort)
+ returns(gshort)
+def test_short(in):
+    # Python wrapper for regress_test_short()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_simple_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_simple_callback.page
new file mode 100644
index 0000000..241d0a8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_simple_callback.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_simple_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_simple_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestSimpleCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_simple_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestSimpleCallback)
+ returns(none)
+def test_simple_callback(callback):
+    # Python wrapper for regress_test_simple_callback()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_size.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_size.page
new file mode 100644
index 0000000..3496e37
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_size.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_size"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gsize</api:type>
+      </api:returns>
+      <api:name>regress_test_size</api:name>
+      <api:arg>
+        <api:type>gsize</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_size</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gsize)
+ returns(gsize)
+def test_size(in):
+    # Python wrapper for regress_test_size()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_skip_unannotated_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_skip_unannotated_callback.page
new file mode 100644
index 0000000..8dc6a48
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_skip_unannotated_callback.page
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<page id="Regress.test_skip_unannotated_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_skip_unannotated_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_skip_unannotated_callback</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestCallback)
+ returns(none)
+def test_skip_unannotated_callback(callback):
+    # Python wrapper for regress_test_skip_unannotated_callback()
+</code></synopsis>
+
+  
+    <p>Should not emit a warning:
+https://bugzilla.gnome.org/show_bug.cgi?id=685399</p>
+  
+  
+  
+  
+<dl>
+<dt><p>callback :</p></dt>
+<dd><p>No annotation here</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ssize.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ssize.page
new file mode 100644
index 0000000..6e61bc8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ssize.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ssize"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gssize</api:type>
+      </api:returns>
+      <api:name>regress_test_ssize</api:name>
+      <api:arg>
+        <api:type>gssize</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ssize</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gssize)
+ returns(gssize)
+def test_ssize(in):
+    # Python wrapper for regress_test_ssize()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_in.page
new file mode 100644
index 0000000..dee44c0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_in.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_in</api:name>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>arr</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_strv_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([unicode])
+ returns(bool)
+def test_strv_in(arr):
+    # Python wrapper for regress_test_strv_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>arr :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_in_gvalue.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_in_gvalue.page
new file mode 100644
index 0000000..ab03bda
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_in_gvalue.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_in_gvalue"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Value</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_in_gvalue</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_in_gvalue</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(GObject.Value)
+def test_strv_in_gvalue():
+    # Python wrapper for regress_test_strv_in_gvalue()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out.page
new file mode 100644
index 0000000..e87d979
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_out</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def test_strv_out():
+    # Python wrapper for regress_test_strv_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out_c.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out_c.page
new file mode 100644
index 0000000..8d5a73a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out_c.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out_c"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out_c</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_out_c</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def test_strv_out_c():
+    # Python wrapper for regress_test_strv_out_c()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out_container.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out_container.page
new file mode 100644
index 0000000..feaf8c7
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_out_container.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_out_container"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>[unicode]</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_out_container</api:name>
+    </api:function>
+
+  </info>
+  <title>test_strv_out_container</title>
+  
+<synopsis><code mime="text/x-python">
+ returns([unicode])
+def test_strv_out_container():
+    # Python wrapper for regress_test_strv_out_container()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_outarg.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_outarg.page
new file mode 100644
index 0000000..7cea6b4
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_strv_outarg.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_strv_outarg"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_strv_outarg</api:name>
+      <api:arg>
+        <api:type>[unicode]</api:type>
+        <api:name>retp</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_strv_outarg</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts([unicode])
+ returns(none)
+def test_strv_outarg(retp):
+    # Python wrapper for regress_test_strv_outarg()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>retp :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_timet.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_timet.page
new file mode 100644
index 0000000..3e7637e
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_timet.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_timet"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_timet</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_timet</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_timet(in):
+    # Python wrapper for regress_test_timet()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_0.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_0.page
new file mode 100644
index 0000000..542dc1f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_0.page
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_0"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_0</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_torture_signature_0</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, float, int, unicode, int, int)
+ returns(none)
+def test_torture_signature_0(x, y, z, foo, q, m):
+    # Python wrapper for regress_test_torture_signature_0()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_1.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_1.page
new file mode 100644
index 0000000..333d386
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_1.page
@@ -0,0 +1,77 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_1"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>bool</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_1</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_torture_signature_1</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, float, int, unicode, int, int)
+ returns(bool)
+def test_torture_signature_1(x, y, z, foo, q, m):
+    # Python wrapper for regress_test_torture_signature_1()
+</code></synopsis>
+
+  
+    <p>This function throws an error if m is odd.</p>
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_2.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_2.page
new file mode 100644
index 0000000..449793b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_torture_signature_2.page
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<page id="Regress.test_torture_signature_2"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_torture_signature_2</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>x</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestCallbackUserData</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>gpointer</api:type>
+        <api:name>user_data</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>GLib.DestroyNotify</api:type>
+        <api:name>notify</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>float</api:type>
+        <api:name>y</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>z</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>foo</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>q</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>m</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_torture_signature_2</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int, Regress.TestCallbackUserData, gpointer, GLib.DestroyNotify, float, int, unicode, int, int)
+ returns(none)
+def test_torture_signature_2(x, callback, user_data, notify, y, z, foo, q, m):
+    # Python wrapper for regress_test_torture_signature_2()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>x :</p></dt>
+<dd></dd>
+<dt><p>callback :</p></dt>
+<dd></dd>
+<dt><p>user_data :</p></dt>
+<dd></dd>
+<dt><p>notify :</p></dt>
+<dd></dd>
+<dt><p>y :</p></dt>
+<dd></dd>
+<dt><p>z :</p></dt>
+<dd></dd>
+<dt><p>foo :</p></dt>
+<dd></dd>
+<dt><p>q :</p></dt>
+<dd></dd>
+<dt><p>m :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint.page
new file mode 100644
index 0000000..84f702a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_uint</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_uint(in):
+    # Python wrapper for regress_test_uint()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint16.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint16.page
new file mode 100644
index 0000000..b8e444a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint16.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint16"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint16</api:type>
+      </api:returns>
+      <api:name>regress_test_uint16</api:name>
+      <api:arg>
+        <api:type>guint16</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint16</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(guint16)
+ returns(guint16)
+def test_uint16(in):
+    # Python wrapper for regress_test_uint16()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint32.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint32.page
new file mode 100644
index 0000000..37da548
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint32.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint32"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint32</api:type>
+      </api:returns>
+      <api:name>regress_test_uint32</api:name>
+      <api:arg>
+        <api:type>guint32</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint32</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(guint32)
+ returns(guint32)
+def test_uint32(in):
+    # Python wrapper for regress_test_uint32()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint64.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint64.page
new file mode 100644
index 0000000..b11cfbb
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint64.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint64"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_uint64</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint64</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_uint64(in):
+    # Python wrapper for regress_test_uint64()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint8.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint8.page
new file mode 100644
index 0000000..58f7817
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_uint8.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_uint8"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>guint8</api:type>
+      </api:returns>
+      <api:name>regress_test_uint8</api:name>
+      <api:arg>
+        <api:type>guint8</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_uint8</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(guint8)
+ returns(guint8)
+def test_uint8(in):
+    # Python wrapper for regress_test_uint8()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ulong.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ulong.page
new file mode 100644
index 0000000..f94fff0
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ulong.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ulong"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>int</api:type>
+      </api:returns>
+      <api:name>regress_test_ulong</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ulong</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(int)
+def test_ulong(in):
+    # Python wrapper for regress_test_ulong()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_unichar.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_unichar.page
new file mode 100644
index 0000000..363a5e3
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_unichar.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_unichar"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_unichar</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_unichar</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(unicode)
+def test_unichar(in):
+    # Python wrapper for regress_test_unichar()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_unsigned_enum_param.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_unsigned_enum_param.page
new file mode 100644
index 0000000..4e77143
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_unsigned_enum_param.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_unsigned_enum_param"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_unsigned_enum_param</api:name>
+      <api:arg>
+        <api:type>Regress.TestEnumUnsigned</api:type>
+        <api:name>e</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_unsigned_enum_param</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(Regress.TestEnumUnsigned)
+ returns(unicode)
+def test_unsigned_enum_param(e):
+    # Python wrapper for regress_test_unsigned_enum_param()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>e :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_ushort.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ushort.page
new file mode 100644
index 0000000..2b0f082
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_ushort.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_ushort"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>gushort</api:type>
+      </api:returns>
+      <api:name>regress_test_ushort</api:name>
+      <api:arg>
+        <api:type>gushort</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_ushort</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(gushort)
+ returns(gushort)
+def test_ushort(in):
+    # Python wrapper for regress_test_ushort()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_const_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_const_in.page
new file mode 100644
index 0000000..36e992b
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_const_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_const_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_const_in</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_const_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(none)
+def test_utf8_const_in(in):
+    # Python wrapper for regress_test_utf8_const_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_const_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_const_return.page
new file mode 100644
index 0000000..9aef1f1
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_const_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_const_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_const_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_const_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(unicode)
+def test_utf8_const_return():
+    # Python wrapper for regress_test_utf8_const_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>UTF-8 string</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_inout.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_inout.page
new file mode 100644
index 0000000..c7c32cc
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_inout.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_inout"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_inout</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>inout</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_inout</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(none)
+def test_utf8_inout(inout):
+    # Python wrapper for regress_test_utf8_inout()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>inout :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_nonconst_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_nonconst_return.page
new file mode 100644
index 0000000..fd5de6a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_nonconst_return.page
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_nonconst_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_nonconst_return</api:name>
+    </api:function>
+
+  </info>
+  <title>test_utf8_nonconst_return</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(unicode)
+def test_utf8_nonconst_return():
+    # Python wrapper for regress_test_utf8_nonconst_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>Returns :</p></dt>
+<dd><p>UTF-8 string</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_null_in.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_null_in.page
new file mode 100644
index 0000000..c6aff04
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_null_in.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_null_in"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_null_in</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>in</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_null_in</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(none)
+def test_utf8_null_in(in):
+    # Python wrapper for regress_test_utf8_null_in()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>in :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_null_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_null_out.page
new file mode 100644
index 0000000..65b277a
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_null_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_null_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_null_out</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>char_out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_null_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(none)
+def test_utf8_null_out(char_out):
+    # Python wrapper for regress_test_utf8_null_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>char_out :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out.page
new file mode 100644
index 0000000..7f73b8d
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out.page
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(none)
+def test_utf8_out(out):
+    # Python wrapper for regress_test_utf8_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out_nonconst_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out_nonconst_return.page
new file mode 100644
index 0000000..ed43d54
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out_nonconst_return.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out_nonconst_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out_nonconst_return</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>out</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_out_nonconst_return</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode)
+ returns(unicode)
+def test_utf8_out_nonconst_return(out):
+    # Python wrapper for regress_test_utf8_out_nonconst_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out :</p></dt>
+<dd><p>a copy of "second"</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>a copy of "first"</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out_out.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out_out.page
new file mode 100644
index 0000000..763053f
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_utf8_out_out.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_utf8_out_out"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_utf8_out_out</api:name>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>out0</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>unicode</api:type>
+        <api:name>out1</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_utf8_out_out</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(unicode, unicode)
+ returns(none)
+def test_utf8_out_out(out0, out1):
+    # Python wrapper for regress_test_utf8_out_out()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>out0 :</p></dt>
+<dd><p>a copy of "first"</p></dd>
+<dt><p>out1 :</p></dt>
+<dd><p>a copy of "second"</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_get_fundamental_object.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_get_fundamental_object.page
new file mode 100644
index 0000000..2f13d40
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_get_fundamental_object.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_get_fundamental_object"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>Regress.TestFundamentalObject</api:type>
+      </api:returns>
+      <api:name>regress_test_value_get_fundamental_object</api:name>
+      <api:arg>
+        <api:type>GObject.Value</api:type>
+        <api:name>value</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_value_get_fundamental_object</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GObject.Value)
+ returns(Regress.TestFundamentalObject)
+def test_value_get_fundamental_object(value):
+    # Python wrapper for regress_test_value_get_fundamental_object()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>value :</p></dt>
+<dd></dd>
+<dt><p>Returns :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_return.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_return.page
new file mode 100644
index 0000000..54aaaa6
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_return.page
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_return"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>GObject.Value</api:type>
+      </api:returns>
+      <api:name>regress_test_value_return</api:name>
+      <api:arg>
+        <api:type>int</api:type>
+        <api:name>i</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_value_return</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(int)
+ returns(GObject.Value)
+def test_value_return(i):
+    # Python wrapper for regress_test_value_return()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>i :</p></dt>
+<dd><p>an int</p></dd>
+<dt><p>Returns :</p></dt>
+<dd><p>the int wrapped in a GValue.</p></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_set_fundamental_object.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_set_fundamental_object.page
new file mode 100644
index 0000000..e1efb48
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_value_set_fundamental_object.page
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<page id="Regress.test_value_set_fundamental_object"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_value_set_fundamental_object</api:name>
+      <api:arg>
+        <api:type>GObject.Value</api:type>
+        <api:name>value</api:name>
+      </api:arg>
+      <api:arg>
+        <api:type>Regress.TestFundamentalObject</api:type>
+        <api:name>fundamental_object</api:name>
+      </api:arg>
+    </api:function>
+
+  </info>
+  <title>test_value_set_fundamental_object</title>
+  
+<synopsis><code mime="text/x-python">
+ accepts(GObject.Value, Regress.TestFundamentalObject)
+ returns(none)
+def test_value_set_fundamental_object(value, fundamental_object):
+    # Python wrapper for regress_test_value_set_fundamental_object()
+</code></synopsis>
+
+  
+    
+  
+  
+  
+  
+<dl>
+<dt><p>value :</p></dt>
+<dd></dd>
+<dt><p>fundamental_object :</p></dt>
+<dd></dd>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_versioning.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_versioning.page
new file mode 100644
index 0000000..4a5cfd8
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_versioning.page
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<page id="Regress.test_versioning"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/";
+      xmlns:api="http://projectmallard.org/experimental/api/";
+      xmlns:ui="http://projectmallard.org/1.0/ui/";>
+  <info>
+    
+    <link type="guide" xref="index" group="function"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_versioning</api:name>
+    </api:function>
+
+  </info>
+  <title>test_versioning</title>
+  
+<synopsis><code mime="text/x-python">
+ returns(none)
+def test_versioning():
+    # Python wrapper for regress_test_versioning()
+</code></synopsis>
+
+  
+    
+  
+  
+    <p>Since 1.32.1</p>
+  
+  
+<dl>
+</dl>
+
+  
+  
+</page>
diff --git a/tests/doctool/DocExamples-1.0-Python-expected/index.page b/tests/scanner/Regress-1.0-Python-expected/index.page
similarity index 100%
rename from tests/doctool/DocExamples-1.0-Python-expected/index.page
rename to tests/scanner/Regress-1.0-Python-expected/index.page


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]