Spurious error? `new' modifier not allowed on creation method
When building libgnome-games-support with vala git master:
test-scores.vala:280.34-280.34: error: syntax error, `new' modifier not allowed on creation method
test_suite.add (new TestCase ("Scores Files Created", () => {}, test_scores_files_exist, delete_scores));
^
test-scores.vala:281.34-281.34: error: syntax error, `new' modifier not allowed on creation method
test_suite.add (new TestCase ("Save Score to File", () => {}, test_save_score_to_file, delete_scores));
^
test-scores.vala:282.34-282.34: error: syntax error, `new' modifier not allowed on creation method
test_suite.add (new TestCase ("Import from Score Directory", () => {}, test_import_from_score_directory, delete_scores));
^
test-scores.vala:283.34-283.34: error: syntax error, `new' modifier not allowed on creation method
test_suite.add (new TestCase ("Import from History File", () => {}, test_import_from_history_file, delete_scores));
^
test-scores.vala:284.34-284.34: error: syntax error, `new' modifier not allowed on creation method
test_suite.add (new TestCase ("Import from Nonexistent History File", () => {}, test_import_from_nonexistent_history_file, delete_scores));
^
Problem is that TestCase looks like a constructor, not a creation method:
[Compact]
[CCode (cname = "GTestCase", ref_function = "", unref_function = "")]
public class TestCase {
[Version (since = "2.16")]
[CCode (cname = "g_test_create_case")]
public TestCase (string test_name, [CCode (delegate_target_pos = 1.9)] TestFixtureFunc data_setup, [CCode (delegate_target_pos = 1.9)] TestFixtureFunc data_func, [CCode (delegate_target_pos = 1.9)] TestFixtureFunc data_teardown, [CCode (pos = 1.8)] size_t data_size = 0);
}
The underlying C function might not be a typical wrapper around g_object_new
but TestCase.TestCase
sure looks like a constructor declaration to me? Is this a bug?