From 7cf833333a6032a841067c16c116f8230775a604 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=BCrg=20Billeter?= Date: Tue, 21 Nov 2006 10:29:36 +0000 Subject: [PATCH] don't require GLib namespace at runtime in symbol resolver and semantic MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 2006-11-21 Jürg Billeter * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: don't require GLib namespace at runtime in symbol resolver and semantic analyzer svn path=/trunk/; revision=176 --- vala/ChangeLog | 6 ++++++ vala/vala/valasemanticanalyzer.vala | 12 +++++++----- vala/vala/valasymbolresolver.vala | 6 +++++- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/vala/ChangeLog b/vala/ChangeLog index ff35703..ce49625 100644 --- a/vala/ChangeLog +++ b/vala/ChangeLog @@ -1,5 +1,11 @@ 2006-11-21 Jürg Billeter + * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: don't + require GLib namespace at runtime in symbol resolver and semantic + analyzer + +2006-11-21 Jürg Billeter + * tests/testrunner.sh: add test script * tests/*.out: add reference output for test cases * tests/Makefile.am: add test environment diff --git a/vala/vala/valasemanticanalyzer.vala b/vala/vala/valasemanticanalyzer.vala index fcc7907..fb55f73 100644 --- a/vala/vala/valasemanticanalyzer.vala +++ b/vala/vala/valasemanticanalyzer.vala @@ -72,12 +72,14 @@ public class Vala.SemanticAnalyzer : CodeVisitor { int_type = new TypeReference (); int_type.data_type = (DataType) root_symbol.lookup ("int").node; + // TODO: don't require GLib namespace in semantic analyzer var glib_ns = root_symbol.lookup ("GLib"); - - initially_unowned_type = (DataType) glib_ns.lookup ("InitiallyUnowned").node; - - type_type = new TypeReference (); - type_type.data_type = (DataType) glib_ns.lookup ("Type").node; + if (glib_ns != null) { + initially_unowned_type = (DataType) glib_ns.lookup ("InitiallyUnowned").node; + + type_type = new TypeReference (); + type_type.data_type = (DataType) glib_ns.lookup ("Type").node; + } current_symbol = root_symbol; context.accept (this); diff --git a/vala/vala/valasymbolresolver.vala b/vala/vala/valasymbolresolver.vala index 4303be0..aaddb31 100644 --- a/vala/vala/valasymbolresolver.vala +++ b/vala/vala/valasymbolresolver.vala @@ -41,7 +41,11 @@ public class Vala.SymbolResolver : CodeVisitor { root_symbol = context.get_root (); current_scope = root_symbol; - object_class = (Class) root_symbol.lookup ("GLib").lookup ("Object").node; + // TODO: don't require GLib namespace in symbol resolver + var glib_ns = root_symbol.lookup ("GLib"); + if (glib_ns != null) { + object_class = (Class) glib_ns.lookup ("Object").node; + } context.accept (this); } -- 2.7.4