vala r1318 - in trunk: . gobject
- From: juergbi svn gnome org
- To: svn-commits-list gnome org
- Subject: vala r1318 - in trunk: . gobject
- Date: Sat, 26 Apr 2008 08:56:21 +0100 (BST)
Author: juergbi
Date: Sat Apr 26 07:56:21 2008
New Revision: 1318
URL: http://svn.gnome.org/viewvc/vala?rev=1318&view=rev
Log:
2008-04-26 Juerg Billeter <j bitron ch>
* gobject/valaccodegenerator.vala:
* gobject/valaccodetypesymbolbinding.vala:
Fix `char' properties, fixes bug 529604
Modified:
trunk/ChangeLog
trunk/gobject/valaccodegenerator.vala
trunk/gobject/valaccodetypesymbolbinding.vala
Modified: trunk/gobject/valaccodegenerator.vala
==============================================================================
--- trunk/gobject/valaccodegenerator.vala (original)
+++ trunk/gobject/valaccodegenerator.vala Sat Apr 26 07:56:21 2008
@@ -93,6 +93,8 @@
public DataType uint_type;
public DataType long_type;
public DataType ulong_type;
+ public DataType int8_type;
+ public DataType uint8_type;
public DataType int64_type;
public DataType uint64_type;
public DataType string_type;
@@ -214,6 +216,8 @@
uint_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("uint"));
long_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("long"));
ulong_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("ulong"));
+ int8_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("int8"));
+ uint8_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("uint8"));
int64_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("int64"));
uint64_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("uint64"));
float_type = new ValueType ((Typesymbol) root_symbol.scope.lookup ("float"));
Modified: trunk/gobject/valaccodetypesymbolbinding.vala
==============================================================================
--- trunk/gobject/valaccodetypesymbolbinding.vala (original)
+++ trunk/gobject/valaccodetypesymbolbinding.vala Sat Apr 26 07:56:21 2008
@@ -104,6 +104,16 @@
} else {
cspec.add_argument (new CCodeConstant ("FALSE"));
}
+ } else if (prop.type_reference.data_type == codegen.int8_type.data_type
+ || prop.type_reference.data_type == codegen.char_type.data_type) {
+ cspec.call = new CCodeIdentifier ("g_param_spec_char");
+ cspec.add_argument (new CCodeConstant ("G_MININT8"));
+ cspec.add_argument (new CCodeConstant ("G_MAXINT8"));
+ if (prop.default_expression != null) {
+ cspec.add_argument ((CCodeExpression) prop.default_expression.ccodenode);
+ } else {
+ cspec.add_argument (new CCodeConstant ("0"));
+ }
} else if (prop.type_reference.data_type == codegen.float_type.data_type) {
cspec.call = new CCodeIdentifier ("g_param_spec_float");
cspec.add_argument (new CCodeConstant ("-G_MAXFLOAT"));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]