]> git.ipfire.org Git - thirdparty/vala.git/commit
codegen: Emit diagnostic pragmas for GCC 14, Clang 16 compatibility
authorFlorian Weimer <fweimer@redhat.com>
Fri, 19 Jan 2024 11:44:23 +0000 (12:44 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Sun, 4 Feb 2024 12:09:52 +0000 (13:09 +0100)
commitae2cbcd0011081581bef406fcbfcd1e86b7dacd3
tree6d0c8f8738c90d960862c47b3c9689cf8dcd4f6e
parentfee6dadcd4a8cc772c190a3e6bf9820f8fe2041e
codegen: Emit diagnostic pragmas for GCC 14, Clang 16 compatibility

GCC 14 refuses to compile C sources with certain type errors, to
provide prompt feedback to programmers about mistakes.
Vala does not have the required information for const qualifiers
of parameters and return values which leads to incompatible-pointer
warnings/errors.

As a stop-gap measure, this commit introduces pragmata to turn the
relevant GCC/Clang diagnostics into warnings.  For experimentation,
this can be avoided at C compilation time by defining VALA_STRICT_C.

Clang 16 is broadly similar, except that it is not possible to
turn the errors into warnings using #pragma.  They have to be disabled
completely.  In Clang 16 and 17, -Wincompatible-pointer-types is not
an error yet, but that is likely to change in future Clang versions,
so this commit disables this warning, too.  Another error,
-Wincompatible-function-pointer-types has been split from that,
and needs to be disabled.

Fixes https://gitlab.gnome.org/GNOME/vala/issues/1408
832 files changed:
ccode/Makefile.am
ccode/valaccodepragma.vala [new file with mode: 0644]
codegen/valaccodebasemodule.vala
tests/annotations/deprecated-delegate-minimal.c-expected
tests/annotations/deprecated-enum-minimal.c-expected
tests/annotations/deprecated-method-minimal.c-expected
tests/annotations/deprecated-property-minimal.c-expected
tests/annotations/deprecated-struct-minimal.c-expected
tests/annotations/deprecated.c-expected
tests/annotations/description.c-expected
tests/arrays/cast-struct-boxed-element-access.c-expected
tests/arrays/class-field-fixed-length-initializer.c-expected
tests/arrays/class-field-initializer.c-expected
tests/arrays/class-field-length-cname.c-expected
tests/arrays/constant-element-access.c-expected
tests/arrays/element-class-assignment.c-expected
tests/arrays/element-nullable-assignment.c-expected
tests/arrays/empty-length-0.c-expected
tests/arrays/field-global-length-cname.c-expected
tests/arrays/fixed-length-enum-value.c-expected
tests/arrays/fixed-length-init0-not-allowed.c-expected
tests/arrays/in-operator-with-boxed-needle.c-expected
tests/arrays/inline-namespace-field.c-expected
tests/arrays/inline-struct.c-expected
tests/arrays/length-inline-assignment.c-expected
tests/arrays/length-type-include.c-expected
tests/arrays/length-type.c-expected
tests/arrays/resize-local-size-captured.c-expected
tests/arrays/resize-local-size.c-expected
tests/arrays/resize.c-expected
tests/arrays/slice-fixed-length.c-expected
tests/arrays/struct-field-initializer.c-expected
tests/arrays/struct-field-length-cname.c-expected
tests/arrays/struct-initializer-null.c-expected
tests/arrays/struct-namespaced-initializer.c-expected
tests/asynchronous/bug595735.c-expected
tests/asynchronous/bug595755.c-expected
tests/asynchronous/bug596177.c-expected
tests/asynchronous/bug596861.c-expected
tests/asynchronous/bug597294.c-expected
tests/asynchronous/bug598677.c-expected
tests/asynchronous/bug598697.c-expected
tests/asynchronous/bug598698.c-expected
tests/asynchronous/bug599568.c-expected
tests/asynchronous/bug600827.c-expected
tests/asynchronous/bug601558.c-expected
tests/asynchronous/bug602594.c-expected
tests/asynchronous/bug612641.c-expected
tests/asynchronous/bug613484.c-expected
tests/asynchronous/bug614294.c-expected
tests/asynchronous/bug620740.c-expected
tests/asynchronous/bug626053.c-expected
tests/asynchronous/bug639591.c-expected
tests/asynchronous/bug640721.c-expected
tests/asynchronous/bug641182.c-expected
tests/asynchronous/bug646945.c-expected
tests/asynchronous/bug652252.c-expected
tests/asynchronous/bug653861.c-expected
tests/asynchronous/bug654336.c-expected
tests/asynchronous/bug654337.c-expected
tests/asynchronous/bug659886.c-expected
tests/asynchronous/bug661961.c-expected
tests/asynchronous/bug710103.c-expected
tests/asynchronous/bug741929.c-expected
tests/asynchronous/bug742621.c-expected
tests/asynchronous/bug762819.c-expected
tests/asynchronous/bug777242.c-expected
tests/asynchronous/bug783543.c-expected
tests/asynchronous/bug792660.c-expected
tests/asynchronous/bug792942.c-expected
tests/asynchronous/bug793158.c-expected
tests/asynchronous/captured-fixed-array.c-expected
tests/asynchronous/catch-error-scope.c-expected
tests/asynchronous/catch-in-finally.c-expected
tests/asynchronous/closures.c-expected
tests/asynchronous/constructor-argument-check.c-expected
tests/asynchronous/creation-method-uncaught.c-expected
tests/asynchronous/finish-name.c-expected
tests/asynchronous/generator.c-expected
tests/asynchronous/main-block-async-call.c-expected
tests/asynchronous/main-block-async-creation.c-expected
tests/asynchronous/main-block-async-yield.c-expected
tests/asynchronous/method-main-async-void.c-expected
tests/asynchronous/method-main-async.c-expected
tests/asynchronous/nowrapper.c-expected
tests/asynchronous/out-parameter-free-on-error.c-expected
tests/asynchronous/result-pos.c-expected
tests/asynchronous/yield.c-expected
tests/basic-types/array-uint8-uchar-compat.c-expected
tests/basic-types/arrays-fixed-assignment.c-expected
tests/basic-types/arrays-generics.c-expected
tests/basic-types/arrays.c-expected
tests/basic-types/boolean-literal.c-expected
tests/basic-types/boolean.c-expected
tests/basic-types/bug571486.c-expected
tests/basic-types/bug591552.c-expected
tests/basic-types/bug595751.c-expected
tests/basic-types/bug596637.c-expected
tests/basic-types/bug596785.c-expected
tests/basic-types/bug604371.c-expected
tests/basic-types/bug610660.c-expected
tests/basic-types/bug622178.c-expected
tests/basic-types/bug632322.c-expected
tests/basic-types/bug643612.c-expected
tests/basic-types/bug644046.c-expected
tests/basic-types/bug647222.c-expected
tests/basic-types/bug648364.c-expected
tests/basic-types/bug650993.c-expected
tests/basic-types/bug652380.c-expected
tests/basic-types/bug655908.c-expected
tests/basic-types/bug659975.c-expected
tests/basic-types/bug678791.c-expected
tests/basic-types/bug686336.c-expected
tests/basic-types/bug729907.c-expected
tests/basic-types/bug731017.c-expected
tests/basic-types/bug756376.c-expected
tests/basic-types/bug761307.c-expected
tests/basic-types/bug761736.c-expected
tests/basic-types/bug772426.c-expected
tests/basic-types/bug787152.c-expected
tests/basic-types/bug788775.c-expected
tests/basic-types/custom-types.c-expected
tests/basic-types/default-gtype.c-expected
tests/basic-types/escape-chars.c-expected
tests/basic-types/float-literals.c-expected
tests/basic-types/floats-boxed-cast.c-expected
tests/basic-types/floats-hexadecimal.c-expected
tests/basic-types/floats.c-expected
tests/basic-types/garray.c-expected
tests/basic-types/gassert.c-expected
tests/basic-types/glists.c-expected
tests/basic-types/glists_remove.c-expected
tests/basic-types/gptrarray.c-expected
tests/basic-types/gvariants-unboxing-safe.c-expected
tests/basic-types/gvariants.c-expected
tests/basic-types/integer-literals.c-expected
tests/basic-types/integers-binary.c-expected
tests/basic-types/integers-boxed-cast.c-expected
tests/basic-types/integers-negative-rank.c-expected
tests/basic-types/integers-octal.c-expected
tests/basic-types/integers.c-expected
tests/basic-types/null.c-expected
tests/basic-types/pointers-arithmetic.c-expected
tests/basic-types/pointers.c-expected
tests/basic-types/sizeof.c-expected
tests/basic-types/string-array-append.c-expected
tests/basic-types/string-relation.c-expected
tests/basic-types/strings.c-expected
tests/bindings/gio/memoryoutputstream.c-expected
tests/chainup/bug791785.c-expected
tests/chainup/class-base-foo.c-expected
tests/chainup/class-base.c-expected
tests/chainup/class-compact-base.c-expected
tests/chainup/class-compact-this.c-expected
tests/chainup/class-object.c-expected
tests/chainup/class-this-foo.c-expected
tests/chainup/class-this.c-expected
tests/chainup/method-lambda-base.c-expected
tests/chainup/no-chainup.c-expected
tests/chainup/signal-default-handler.c-expected
tests/chainup/struct-base-foo.c-expected
tests/chainup/struct-base.c-expected
tests/chainup/struct-no-gtype-base.c-expected
tests/chainup/struct-simple-no-gtype-base.c-expected
tests/chainup/struct-this-foo.c-expected
tests/chainup/struct-this.c-expected
tests/constants/delegate-type.c-expected
tests/constants/glog.c-expected
tests/constants/member-access-enum.c-expected
tests/constants/member-access.c-expected
tests/constants/strings.c-expected
tests/control-flow/assigned-local-variable.c-expected
tests/control-flow/break.c-expected
tests/control-flow/bug628336.c-expected
tests/control-flow/bug639482.c-expected
tests/control-flow/bug652549.c-expected
tests/control-flow/bug661985.c-expected
tests/control-flow/bug665904.c-expected
tests/control-flow/bug691514.c-expected
tests/control-flow/bug736774-1.c-expected
tests/control-flow/bug736774-2.c-expected
tests/control-flow/bug761267-1.c-expected
tests/control-flow/bug761267-2.c-expected
tests/control-flow/bug764440.c-expected
tests/control-flow/coalesce-as-argument.c-expected
tests/control-flow/coalesce-execution-order.c-expected
tests/control-flow/coalesce-reference-transfer.c-expected
tests/control-flow/coalesce-right-value.c-expected
tests/control-flow/coalesce-short-circuit.c-expected
tests/control-flow/conditional-as-argument.c-expected
tests/control-flow/expressions-conditional.c-expected
tests/control-flow/finally-no-return.c-expected
tests/control-flow/for-switch-continue.c-expected
tests/control-flow/for.c-expected
tests/control-flow/foreach.c-expected
tests/control-flow/local-clash-with-implicit-this.c-expected
tests/control-flow/lock-if-throw.c-expected
tests/control-flow/nested-conditional.c-expected
tests/control-flow/null-conditional-bool.c-expected
tests/control-flow/pre-post-increment-array-index.c-expected
tests/control-flow/pre-post-increment-field.c-expected
tests/control-flow/pre-post-increment-local.c-expected
tests/control-flow/pre-post-increment-parameter.c-expected
tests/control-flow/pre-post-increment-property.c-expected
tests/control-flow/pre-post-increment.c-expected
tests/control-flow/sideeffects.c-expected
tests/control-flow/switch-enum.c-expected
tests/control-flow/switch-string.c-expected
tests/control-flow/switch.c-expected
tests/control-flow/while-false.c-expected
tests/dbus/arrays_client.c-expected
tests/dbus/arrays_server.c-expected
tests/dbus/async-bus_client.c-expected
tests/dbus/async-bus_server.c-expected
tests/dbus/async-connection_client.c-expected
tests/dbus/async-connection_server.c-expected
tests/dbus/async-errors_client.c-expected
tests/dbus/async-errors_server.c-expected
tests/dbus/async-no-reply_client.c-expected
tests/dbus/async-no-reply_server.c-expected
tests/dbus/async_client.c-expected
tests/dbus/async_server.c-expected
tests/dbus/basic-types_client.c-expected
tests/dbus/basic-types_server.c-expected
tests/dbus/bug596862.c-expected
tests/dbus/bug602003_client.c-expected
tests/dbus/bug602003_server.c-expected
tests/dbus/bug735437_client.c-expected
tests/dbus/bug735437_server.c-expected
tests/dbus/bug782719_client.c-expected
tests/dbus/bug782719_server.c-expected
tests/dbus/bug783002_client.c-expected
tests/dbus/bug783002_server.c-expected
tests/dbus/bug792277.c-expected
tests/dbus/connection_client.c-expected
tests/dbus/connection_server.c-expected
tests/dbus/dicts_client.c-expected
tests/dbus/dicts_server.c-expected
tests/dbus/dynamic-method_client.c-expected
tests/dbus/dynamic-method_server.c-expected
tests/dbus/enum-string-marshalling.c-expected
tests/dbus/errors_client.c-expected
tests/dbus/errors_server.c-expected
tests/dbus/filedescriptor-async_client.c-expected
tests/dbus/filedescriptor-async_server.c-expected
tests/dbus/filedescriptor-errors_client.c-expected
tests/dbus/filedescriptor-errors_server.c-expected
tests/dbus/filedescriptor_client.c-expected
tests/dbus/filedescriptor_server.c-expected
tests/dbus/generics_client.c-expected
tests/dbus/generics_server.c-expected
tests/dbus/interface-info_client.c-expected
tests/dbus/interface-info_server.c-expected
tests/dbus/no-reply_client.c-expected
tests/dbus/no-reply_server.c-expected
tests/dbus/rawvariants_client.c-expected
tests/dbus/rawvariants_server.c-expected
tests/dbus/signals_client.c-expected
tests/dbus/signals_server.c-expected
tests/dbus/structs_client.c-expected
tests/dbus/structs_server.c-expected
tests/delegates/bug539166.c-expected
tests/delegates/bug595610.c-expected
tests/delegates/bug595639.c-expected
tests/delegates/bug638415.c-expected
tests/delegates/bug639751.c-expected
tests/delegates/bug659778.c-expected
tests/delegates/bug683925.c-expected
tests/delegates/bug703804.c-expected
tests/delegates/bug761360.c-expected
tests/delegates/bug792077.c-expected
tests/delegates/casting.c-expected
tests/delegates/class-field-initializer.c-expected
tests/delegates/compatible.c-expected
tests/delegates/delegate-recusive.c-expected
tests/delegates/delegate_only.c-expected
tests/delegates/delegates.c-expected
tests/delegates/error-pos.c-expected
tests/delegates/fields-no-target.c-expected
tests/delegates/fields.c-expected
tests/delegates/gclosure-conversion.c-expected
tests/delegates/implicit-local-variable.c-expected
tests/delegates/lambda-mixed-instance-static.c-expected
tests/delegates/lambda-shared-closure.c-expected
tests/delegates/member-target-destroy-2.c-expected
tests/delegates/member-target-destroy.c-expected
tests/delegates/params-array-with-throws.c-expected
tests/delegates/params-array.c-expected
tests/delegates/reference_transfer.c-expected
tests/delegates/return-array-null-terminated.c-expected
tests/delegates/variadic.c-expected
tests/delegates/wrapper.c-expected
tests/enums/bug614424.c-expected
tests/enums/bug666035.c-expected
tests/enums/bug673879.c-expected
tests/enums/bug763831.c-expected
tests/enums/bug780050.c-expected
tests/enums/default-gtype.c-expected
tests/enums/enum-boxed.c-expected
tests/enums/enum-no-gtype.c-expected
tests/enums/enum_only.c-expected
tests/enums/enums.c-expected
tests/enums/flags.c-expected
tests/enums/from-0-literal.c-expected
tests/enums/in-inference.c-expected
tests/enums/no_gtype_to_string.c-expected
tests/enums/switch.c-expected
tests/enums/unsafe-assignment.c-expected
tests/errors/bug567181.c-expected
tests/errors/bug579101.c-expected
tests/errors/bug596228.c-expected
tests/errors/bug623049.c-expected
tests/errors/bug627090.c-expected
tests/errors/bug639589.c-expected
tests/errors/bug651145.c-expected
tests/errors/bug762377.c-expected
tests/errors/bug778224.c-expected
tests/errors/catch-error-code.c-expected
tests/errors/catch-in-finally.c-expected
tests/errors/default-gtype.c-expected
tests/errors/delegate-throws-error-code.c-expected
tests/errors/errorcode.c-expected
tests/errors/errordomain-static-method.c-expected
tests/errors/errordomain.c-expected
tests/errors/errors.c-expected
tests/errors/loops.c-expected
tests/errors/method-throws-error-code.c-expected
tests/errors/method-throws.c-expected
tests/errors/unhandled.c-expected
tests/generics/arrays.c-expected
tests/generics/bug640330.c-expected
tests/generics/bug694765-1.c-expected
tests/generics/bug694765-2.c-expected
tests/generics/bug694765-3.c-expected
tests/generics/class-property-override.c-expected
tests/generics/constructor-chain-up.c-expected
tests/generics/floating-type-cast.c-expected
tests/generics/foreach-iterator-nullable.c-expected
tests/generics/inference-argument-may-fail-2.c-expected
tests/generics/inference-argument-may-fail.c-expected
tests/generics/inference-static-function.c-expected
tests/generics/integer-member-access.c-expected
tests/generics/integer-type-cast-return.c-expected
tests/generics/integer-type-cast.c-expected
tests/generics/interface-property-impl.c-expected
tests/generics/member-dup-destroy.c-expected
tests/generics/method-return-cast.c-expected
tests/generics/method-to-delegate-2.c-expected
tests/generics/method-to-delegate.c-expected
tests/generics/null-type.c-expected
tests/generics/parameter-in-cast.c-expected
tests/generics/parameter-out-cast.c-expected
tests/generics/parameter-sizeof-initializer-2.c-expected
tests/generics/parameter-sizeof-initializer.c-expected
tests/generics/parameter-typeof-initializer.c-expected
tests/generics/parameter-typeof.c-expected
tests/generics/property-gobject-set.c-expected
tests/generics/property-int-cast.c-expected
tests/generics/reference-transfer.c-expected
tests/generics/string-literal-comparison.c-expected
tests/generics/type-parameter-properties.c-expected
tests/generics/type-parameter-property-clash.c-expected
tests/generics/value-pointer-type-access.c-expected
tests/genie/attributes.c-expected
tests/genie/case.c-expected
tests/genie/class-abstract.c-expected
tests/genie/class-field.c-expected
tests/genie/class-init.c-expected
tests/genie/class-property.c-expected
tests/genie/class-signal.c-expected
tests/genie/class.c-expected
tests/genie/constant.c-expected
tests/genie/control-flow-if-do.c-expected
tests/genie/control-flow-if-else-if.c-expected
tests/genie/control-flow-if-else.c-expected
tests/genie/control-flow-if-greater-than.c-expected
tests/genie/control-flow-if-identity.c-expected
tests/genie/control-flow-if-less-than.c-expected
tests/genie/control-flow-if.c-expected
tests/genie/do-while.c-expected
tests/genie/enum-with-keyword-values.c-expected
tests/genie/enum.c-expected
tests/genie/exception.c-expected
tests/genie/for-downto.c-expected
tests/genie/for-in.c-expected
tests/genie/for-to.c-expected
tests/genie/function-returns-closure.c-expected
tests/genie/function-with-argument.c-expected
tests/genie/function-with-return-value.c-expected
tests/genie/function.c-expected
tests/genie/indentation-with-spaces.c-expected
tests/genie/init-int.c-expected
tests/genie/init.c-expected
tests/genie/initializer-list.c-expected
tests/genie/interface.c-expected
tests/genie/literal-boolean-assignment.c-expected
tests/genie/literal-boolean.c-expected
tests/genie/literal-character.c-expected
tests/genie/literal-hexadecimal.c-expected
tests/genie/literal-integer-long-long-suffix.c-expected
tests/genie/literal-integer.c-expected
tests/genie/literal-null.c-expected
tests/genie/literal-octal.c-expected
tests/genie/literal-real.c-expected
tests/genie/literal-regex.c-expected
tests/genie/literal-template-string.c-expected
tests/genie/literal-verbatim-string.c-expected
tests/genie/operator-addition.c-expected
tests/genie/operator-assignment-combined.c-expected
tests/genie/operator-assignment.c-expected
tests/genie/operator-bitwise-and.c-expected
tests/genie/operator-bitwise-left-shift.c-expected
tests/genie/operator-bitwise-not.c-expected
tests/genie/operator-bitwise-or.c-expected
tests/genie/operator-bitwise-right-shift.c-expected
tests/genie/operator-bitwise-xor.c-expected
tests/genie/operator-division.c-expected
tests/genie/operator-equal.c-expected
tests/genie/operator-greater-than-equal.c-expected
tests/genie/operator-less-than-equal.c-expected
tests/genie/operator-less-than.c-expected
tests/genie/operator-logical-and.c-expected
tests/genie/operator-logical-not.c-expected
tests/genie/operator-logical-or.c-expected
tests/genie/operator-modulo.c-expected
tests/genie/operator-multiply.c-expected
tests/genie/operator-not-equal.c-expected
tests/genie/operator-post-decrement.c-expected
tests/genie/operator-post-increment.c-expected
tests/genie/operator-pre-decrement.c-expected
tests/genie/operator-pre-increment.c-expected
tests/genie/operator-subtraction.c-expected
tests/genie/operator-ternary.c-expected
tests/genie/operators-greater-than.c-expected
tests/genie/preparser-and-expression.c-expected
tests/genie/preparser-elif.c-expected
tests/genie/preparser-equality-expression.c-expected
tests/genie/preparser-not.c-expected
tests/genie/preparser-or-expression.c-expected
tests/genie/preparser.c-expected
tests/genie/print.c-expected
tests/genie/sizeof.c-expected
tests/genie/struct-after-class.c-expected
tests/genie/struct.c-expected
tests/genie/try-except-finally.c-expected
tests/genie/typeof.c-expected
tests/genie/verbatim-template.c-expected
tests/genie/while.c-expected
tests/headers/sealed-class.c-expected
tests/linux/bug793444.c-expected
tests/linux/file-commandpipe.c-expected
tests/methods/argument-array-initilizer.c-expected
tests/methods/argument-named.c-expected
tests/methods/array-length-type.c-expected
tests/methods/bug540483.c-expected
tests/methods/bug595538.c-expected
tests/methods/bug596726.c-expected
tests/methods/bug597426.c-expected
tests/methods/bug598738.c-expected
tests/methods/bug599892.c-expected
tests/methods/bug613483.c-expected
tests/methods/bug620673.c-expected
tests/methods/bug622570.c-expected
tests/methods/bug626783.c-expected
tests/methods/bug634753.c-expected
tests/methods/bug639054.c-expected
tests/methods/bug642350.c-expected
tests/methods/bug642885.c-expected
tests/methods/bug642899.c-expected
tests/methods/bug646345.c-expected
tests/methods/bug648320.c-expected
tests/methods/bug649562.c-expected
tests/methods/bug652098.c-expected
tests/methods/bug653391.c-expected
tests/methods/bug653908.c-expected
tests/methods/bug663210.c-expected
tests/methods/bug699956.c-expected
tests/methods/bug710862.c-expected
tests/methods/bug723009.c-expected
tests/methods/bug723195.c-expected
tests/methods/bug726347.c-expected
tests/methods/bug736235.c-expected
tests/methods/bug737222.c-expected
tests/methods/bug743877.c-expected
tests/methods/bug771964.c-expected
tests/methods/bug774060.c-expected
tests/methods/bug781061.c-expected
tests/methods/bug784691.c-expected
tests/methods/bug791215.c-expected
tests/methods/bug791283.c-expected
tests/methods/closures.c-expected
tests/methods/contains.c-expected
tests/methods/delegate-target.c-expected
tests/methods/extern.c-expected
tests/methods/generics.c-expected
tests/methods/iterator.c-expected
tests/methods/lambda.c-expected
tests/methods/local-functions.c-expected
tests/methods/nowrapper-interface.c-expected
tests/methods/parameter-ccode-type.c-expected
tests/methods/parameter-fixed-array-initializer.c-expected
tests/methods/parameter-out-free-on-error.c-expected
tests/methods/parameter-ref-array-resize-captured.c-expected
tests/methods/parameter-ref-array-resize.c-expected
tests/methods/parameter-ref-delegate.c-expected
tests/methods/parameter-ref-element-access.c-expected
tests/methods/params-array-with-throws.c-expected
tests/methods/params-array.c-expected
tests/methods/postconditions-temp-variables.c-expected
tests/methods/postconditions.c-expected
tests/methods/preconditions-temp-variables.c-expected
tests/methods/prepostconditions-captured.c-expected
tests/methods/prepostconditions-contains.c-expected
tests/methods/prepostconditions.c-expected
tests/methods/print-attribute.c-expected
tests/methods/printf-constructor.c-expected
tests/methods/profile.c-expected
tests/methods/return-unowned-delegate.c-expected
tests/methods/same-name.c-expected
tests/methods/symbolresolution.c-expected
tests/methods/varargs-delegate-without-target.c-expected
tests/methods/varargs-delegate.c-expected
tests/methods/varargs-gvalue.c-expected
tests/methods/varargs-out.c-expected
tests/methods/varargs-ref.c-expected
tests/methods/varargs-struct.c-expected
tests/namespace/unique.c-expected
tests/nullability/array-element-class.c-expected
tests/nullability/array-element-string.c-expected
tests/nullability/bug611223.c-expected
tests/nullability/generics.c-expected
tests/nullability/member-access-narrowed-instance.c-expected
tests/nullability/var-type.c-expected
tests/objects/bug566909.c-expected
tests/objects/bug588203.c-expected
tests/objects/bug589928.c-expected
tests/objects/bug593137.c-expected
tests/objects/bug593260.c-expected
tests/objects/bug596621.c-expected
tests/objects/bug597155.c-expected
tests/objects/bug597161.c-expected
tests/objects/bug613486.c-expected
tests/objects/bug613840.c-expected
tests/objects/bug620675.c-expected
tests/objects/bug620706.c-expected
tests/objects/bug624594.c-expected
tests/objects/bug626038-2.c-expected
tests/objects/bug626038.c-expected
tests/objects/bug628639.c-expected
tests/objects/bug629593.c-expected
tests/objects/bug631267.c-expected
tests/objects/bug634782.c-expected
tests/objects/bug641828.c-expected
tests/objects/bug642809.c-expected
tests/objects/bug643711.c-expected
tests/objects/bug644938.c-expected
tests/objects/bug646362.c-expected
tests/objects/bug646792.c-expected
tests/objects/bug647018.c-expected
tests/objects/bug653138.c-expected
tests/objects/bug654702.c-expected
tests/objects/bug663134.c-expected
tests/objects/bug664529.c-expected
tests/objects/bug681356.c-expected
tests/objects/bug683646.c-expected
tests/objects/bug695671.c-expected
tests/objects/bug702736.c-expected
tests/objects/bug702846.c-expected
tests/objects/bug731547.c-expected
tests/objects/bug741465.c-expected
tests/objects/bug751338.c-expected
tests/objects/bug758816.c-expected
tests/objects/bug764481.c-expected
tests/objects/bug766739.c-expected
tests/objects/bug778632.c-expected
tests/objects/bug779219.c-expected
tests/objects/bug779955.c-expected
tests/objects/bug783897.c-expected
tests/objects/bug788964.c-expected
tests/objects/bug795521.c-expected
tests/objects/chainup.c-expected
tests/objects/class-ccode-cprefix.c-expected
tests/objects/class-destroysinstance.c-expected
tests/objects/class-inner-types.c-expected
tests/objects/class-new-no-override.c-expected
tests/objects/class-partial-nested.c-expected
tests/objects/class-partial.c-expected
tests/objects/class-ref-void.c-expected
tests/objects/class-vfunc-base-access.c-expected
tests/objects/class_only.c-expected
tests/objects/classes-implicit-implementation.c-expected
tests/objects/classes-interfaces-virtuals.c-expected
tests/objects/classes-interfaces.c-expected
tests/objects/classes.c-expected
tests/objects/compact-class-custom-ref.c-expected
tests/objects/compact-class-destructor.c-expected
tests/objects/compact-class-refcount.c-expected
tests/objects/compact-class.c-expected
tests/objects/constructor-inner-error.c-expected
tests/objects/constructor-variadic.c-expected
tests/objects/constructors.c-expected
tests/objects/destructors.c-expected
tests/objects/dynamic.c-expected
tests/objects/fields.c-expected
tests/objects/generics.c-expected
tests/objects/gobject-class-lifetime.c-expected
tests/objects/gsource.c-expected
tests/objects/gtype-class-lifetime.c-expected
tests/objects/initially-unowned.c-expected
tests/objects/instance-comparison.c-expected
tests/objects/interface-abstract-async-override.c-expected
tests/objects/interface-async-base-access.c-expected
tests/objects/interface-async-captured-generic.c-expected
tests/objects/interface-base-access.c-expected
tests/objects/interface-generics.c-expected
tests/objects/interface-inner-types.c-expected
tests/objects/interface-parameter-nowrapper.c-expected
tests/objects/interface-property-base-access.c-expected
tests/objects/interface-property-base-impl.c-expected
tests/objects/interface-property-delegate.c-expected
tests/objects/interface-property-override.c-expected
tests/objects/interface-virtual-override.c-expected
tests/objects/interface_only.c-expected
tests/objects/interfaces.c-expected
tests/objects/member-initializer-base-properties.c-expected
tests/objects/member-initializer-chained-2.c-expected
tests/objects/member-initializer-chained.c-expected
tests/objects/member-initializer-private.c-expected
tests/objects/member-initializer-property-owned-setter.c-expected
tests/objects/member-initializer-property.c-expected
tests/objects/member-initializer-protected.c-expected
tests/objects/methods.c-expected
tests/objects/paramspec.c-expected
tests/objects/plugin-module-init.c-expected
tests/objects/properties.c-expected
tests/objects/property-array-length.c-expected
tests/objects/property-array.c-expected
tests/objects/property-base-access.c-expected
tests/objects/property-construct-only.c-expected
tests/objects/property-delegate-owned.c-expected
tests/objects/property-delegate.c-expected
tests/objects/property-dynamic-type-inference.c-expected
tests/objects/property-enum-nullable.c-expected
tests/objects/property-enum.c-expected
tests/objects/property-error.c-expected
tests/objects/property-gboxed-nullable.c-expected
tests/objects/property-notify-owned-getter.c-expected
tests/objects/property-notify.c-expected
tests/objects/property-ownership.c-expected
tests/objects/property-read-only-auto.c-expected
tests/objects/property-real-struct-assignment.c-expected
tests/objects/property-simple-type-struct-nullable.c-expected
tests/objects/property-static.c-expected
tests/objects/property-struct-no-gtype.c-expected
tests/objects/property-struct.c-expected
tests/objects/property-strv-noaccessor.c-expected
tests/objects/regex.c-expected
tests/objects/signals-default-class-handler.c-expected
tests/objects/signals-delegate-parameter.c-expected
tests/objects/signals-delegate.c-expected
tests/objects/signals-dynamic-emit.c-expected
tests/objects/signals-emit.c-expected
tests/objects/signals-enum-marshal.c-expected
tests/objects/signals-error-marshal.c-expected
tests/objects/signals-fundamental-return.c-expected
tests/objects/signals-generic-return.c-expected
tests/objects/signals-gobject-return.c-expected
tests/objects/signals-lambda-delegate-2.c-expected
tests/objects/signals-lambda-delegate.c-expected
tests/objects/signals-prototype-access.c-expected
tests/objects/signals-struct-return.c-expected
tests/objects/signals-struct.c-expected
tests/objects/signals.c-expected
tests/objects/simple-generics-chainup.c-expected
tests/objects/singleton.c-expected
tests/objects/test-025.c-expected
tests/objects/test-026.c-expected
tests/objects/test-029.c-expected
tests/objects/test-034.c-expected
tests/objects/type-narrowing-by-precondition.c-expected
tests/objects/type-narrowing-fallback.c-expected
tests/objects/type-narrowing.c-expected
tests/objects/with-expression.c-expected
tests/objects/with-instance.c-expected
tests/objects/with-nested-in-lambda.c-expected
tests/objects/with-nested-method.c-expected
tests/objects/with-nested-signal.c-expected
tests/objects/with-nested-unambigous-signal.c-expected
tests/objects/with-nested.c-expected
tests/ordering/constant-class.c-expected
tests/ordering/constant-constant.c-expected
tests/ordering/constant-enum.c-expected
tests/ordering/constant-field.c-expected
tests/ordering/constant-struct.c-expected
tests/ordering/delegate-class.c-expected
tests/ordering/delegate-enum.c-expected
tests/ordering/delegate-interface.c-expected
tests/ordering/delegate-struct.c-expected
tests/ordering/struct-delegate.c-expected
tests/parser-keep-going/member-initializer.c-expected
tests/parser/array-length.c-expected
tests/parser/assignment.c-expected
tests/parser/bug728574.c-expected
tests/parser/bug749576.c-expected
tests/parser/chained-equality.c-expected
tests/parser/continue-statement.c-expected
tests/parser/do-statement.c-expected
tests/parser/field-multi-one-line.c-expected
tests/parser/foreach.c-expected
tests/parser/local-variable-multi-one-line.c-expected
tests/parser/local-variable.c-expected
tests/parser/lock-statement.c-expected
tests/parser/main-block-minimal.c-expected
tests/parser/main-block.c-expected
tests/parser/member-access-pointer.c-expected
tests/parser/member-initializer-empty.c-expected
tests/parser/member-initializer-trailing-comma.c-expected
tests/parser/member-initializer.c-expected
tests/parser/namespaces.c-expected
tests/parser/preprocessor-glib.c-expected
tests/parser/preprocessor-vala.c-expected
tests/parser/preprocessor.c-expected
tests/parser/qualified-member-access.c-expected
tests/parser/qualified-symbol-access.c-expected
tests/parser/sealed-class.c-expected
tests/parser/statement-keyword-as-identifier.c-expected
tests/parser/switch-statement.c-expected
tests/parser/template.c-expected
tests/parser/tuple.c-expected
tests/parser/using-directive.c-expected
tests/parser/var-type-dynamic.c-expected
tests/parser/var-type-nullable.c-expected
tests/parser/verbatim-template.c-expected
tests/parser/with-embedded.c-expected
tests/parser/with-empty.c-expected
tests/parser/yield-return.c-expected
tests/pointers/bug590641.c-expected
tests/pointers/delete.c-expected
tests/posix/arrays.c-expected
tests/posix/delegate_only.c-expected
tests/posix/empty-length-0.c-expected
tests/posix/enum-to-string.c-expected
tests/posix/enum_only.c-expected
tests/posix/string-concat.c-expected
tests/posix/string-printf.c-expected
tests/posix/struct_only.c-expected
tests/resolver/peek-inner-types.c-expected
tests/scanner/regex-escape-x.c-expected
tests/scanner/string-escape-x.c-expected
tests/scanner/string-template.c-expected
tests/scanner/string-verbatim-template.c-expected
tests/semantic/assignment-element-getter-setter.c-expected
tests/semantic/assignment-same-variable.c-expected
tests/semantic/cast-void-not-allowed.c-expected
tests/semantic/class-opaque-automatic-property.c-expected
tests/semantic/class-opaque.c-expected
tests/semantic/compare-type-check.c-expected
tests/semantic/field-constant.c-expected
tests/semantic/floating-reference-base-method.c-expected
tests/semantic/floating-reference-error.c-expected
tests/semantic/floating-reference.c-expected
tests/semantic/localvariable-var-pointer-initializer.c-expected
tests/semantic/member-access-static-transformed-qualified.c-expected
tests/semantic/member-access-static-with-instance.c-expected
tests/semantic/member-access-transformed-qualified.c-expected
tests/semantic/unary-ref-in-initializer-list.c-expected
tests/semantic/unary-ref-in-member-initializer.c-expected
tests/semantic/with-buildin.c-expected
tests/semantic/with-compact.c-expected
tests/semantic/with-declaration-cast-type.c-expected
tests/semantic/with-declaration.c-expected
tests/semantic/with-dereferenced-pointer.c-expected
tests/semantic/with-enum-member.c-expected
tests/semantic/with-null.c-expected
tests/semantic/with-string.c-expected
tests/semantic/with-value.c-expected
tests/structs/bug530605.c-expected
tests/structs/bug572091.c-expected
tests/structs/bug583603.c-expected
tests/structs/bug595587.c-expected
tests/structs/bug596144.c-expected
tests/structs/bug603056.c-expected
tests/structs/bug606202.c-expected
tests/structs/bug609642.c-expected
tests/structs/bug613513.c-expected
tests/structs/bug613825.c-expected
tests/structs/bug621176.c-expected
tests/structs/bug622422.c-expected
tests/structs/bug623092.c-expected
tests/structs/bug651441.c-expected
tests/structs/bug654646.c-expected
tests/structs/bug654753.c-expected
tests/structs/bug656693.c-expected
tests/structs/bug657378.c-expected
tests/structs/bug658048.c-expected
tests/structs/bug660426.c-expected
tests/structs/bug661945.c-expected
tests/structs/bug667890.c-expected
tests/structs/bug669580.c-expected
tests/structs/bug685177.c-expected
tests/structs/bug686190.c-expected
tests/structs/bug688732.c-expected
tests/structs/bug690380.c-expected
tests/structs/bug694140.c-expected
tests/structs/bug749952.c-expected
tests/structs/bug775761.c-expected
tests/structs/bug777194-2.c-expected
tests/structs/bug777194.c-expected
tests/structs/cast-struct-boxed.c-expected
tests/structs/constructor-params-array.c-expected
tests/structs/constructor-variadic.c-expected
tests/structs/default-gtype.c-expected
tests/structs/gmutex.c-expected
tests/structs/gtype-base-struct.c-expected
tests/structs/gvalue-implicit-comparison.c-expected
tests/structs/gvalue.c-expected
tests/structs/namespace-field-nested-initializer.c-expected
tests/structs/properties.c-expected
tests/structs/simple-type-boxed.c-expected
tests/structs/simple-type-constructor.c-expected
tests/structs/simple-type-default-value.c-expected
tests/structs/struct-base-types.c-expected
tests/structs/struct-boxed-cast.c-expected
tests/structs/struct-initializer-list-in-array.c-expected
tests/structs/struct-initializer-list-nested.c-expected
tests/structs/struct-no-gtype-inherit.c-expected
tests/structs/struct-no-gtype.c-expected
tests/structs/struct-static-field-initializer-3.c-expected
tests/structs/struct-static-field-initializer.c-expected
tests/structs/struct_only.c-expected
tests/structs/structs.c-expected
tests/threads/threadpool.c-expected