+2008-11-14 Jürg Billeter <j@bitron.ch>
+
+ * vala/valagenieparser.vala:
+ * vala/valainterface.vala:
+ * vala/valainterfacewriter.vala:
+ * vala/valaparser.vala:
+ * vala/valasemanticanalyzer.vala:
+ * gobject/valaccodeassignmentmodule.vala:
+ * gobject/valaccodebasemodule.vala:
+ * gobject/valaccodeinvocationexpressionmodule.vala:
+ * vapi/glib-2.0.vapi:
+ * vapigen/valagidlparser.vala:
+ * vapigen/valagirparser.vala:
+ * vapigen/valamarkupreader.vala:
+ * vapigen/valavapicheck.vala:
+ * gen-project/valaprojectgenerator.vala:
+
+ Do not use possibly uninitialized variables
+
2008-11-14 Jürg Billeter <j@bitron.ch>
* vala/valacfgbuilder.vala:
private string generate_source_file_header (string filename) {
var s = new StringBuilder ();
- TimeVal tv;
- tv.get_current_time ();
+ TimeVal tv = TimeVal ();
Date d = Date ();
d.set_time_val (tv);
cop = CCodeBinaryOperator.SHIFT_LEFT;
} else if (assignment.operator == AssignmentOperator.SHIFT_RIGHT) {
cop = CCodeBinaryOperator.SHIFT_RIGHT;
+ } else {
+ assert_not_reached ();
}
cexpr = new CCodeBinaryExpression (cop, (CCodeExpression) get_ccodenode (assignment.left), new CCodeParenthesizedExpression (cexpr));
}
}
if (expr.symbol_reference == null) {
- CCodeFunctionCall creation_call;
+ CCodeFunctionCall creation_call = null;
// no creation method
if (expr.type_reference.data_type == glist_type ||
op = CCodeUnaryOperator.ADDRESS_OF;
} else if (expr.operator == UnaryOperator.OUT) {
op = CCodeUnaryOperator.ADDRESS_OF;
+ } else {
+ assert_not_reached ();
}
expr.ccodenode = new CCodeUnaryExpression (op, (CCodeExpression) expr.inner.ccodenode);
}
expr.ccodenode = new CCodeBinaryExpression (CCodeBinaryOperator.EQUALITY, new CCodeParenthesizedExpression (new CCodeBinaryExpression (CCodeBinaryOperator.BITWISE_AND, new CCodeParenthesizedExpression (cright), new CCodeParenthesizedExpression (cleft))), new CCodeParenthesizedExpression (cleft));
return;
+ } else {
+ assert_not_reached ();
}
if (expr.operator == BinaryOperator.EQUALITY ||
left = ((CCodeIdentifier) cleft).name;
} else if (cleft is CCodeConstant) {
left = ((CCodeConstant) cleft).name;
+ } else {
+ assert_not_reached ();
}
if (cright is CCodeIdentifier) {
right = ((CCodeIdentifier) cright).name;
} else if (cright is CCodeConstant) {
right = ((CCodeConstant) cright).name;
+ } else {
+ assert_not_reached ();
}
expr.ccodenode = new CCodeConstant ("%s %s".printf (left, right));
requires_array_move = true;
}
- CCodeExpression instance;
+ CCodeExpression instance = null;
if (m != null && m.binding == MemberBinding.INSTANCE && !(m is CreationMethod)) {
instance = (CCodeExpression) ma.inner.ccodenode;
}
// call function
- LocalVariable ret_temp_var;
+ LocalVariable ret_temp_var = null;
if (m.return_type is VoidType) {
ccomma.append_expression (ccall_expr);
} else {
Expression parse_array_creation_expression (SourceLocation begin, MemberAccess member) throws ParseError {
bool size_specified = false;
- Gee.List<Expression> size_specifier_list;
+ Gee.List<Expression> size_specifier_list = null;
bool first = true;
DataType element_type = UnresolvedType.new_from_expression (member);
&& current () != TokenType.WHEN
&& current () != TokenType.DEFAULT) {
try {
- Statement stmt;
+ Statement stmt = null;
bool is_decl = false;
comment = scanner.pop_comment ();
switch (current ()) {
}
} catch (ParseError e) {
int r;
- while (true) {
+ do {
r = recover ();
if (r == RecoveryState.STATEMENT_BEGIN) {
next ();
} else {
break;
}
- }
+ } while (true);
if (r == RecoveryState.EOF) {
return;
}
prop.get_accessor = new PropertyAccessor (true, false, false, block, get_src (accessor_begin));
prop.get_accessor.access = SymbolAccessibility.PUBLIC;
} else {
- bool _construct;
+ bool _construct = false;
if (accept (TokenType.SET)) {
if (readonly) {
throw new ParseError.SYNTAX (get_error ("set block not allowed for a read only property"));
}
/* check prerequisites */
- Class prereq_class;
+ Class prereq_class = null;
foreach (DataType prereq in get_prerequisites ()) {
TypeSymbol class_or_interface = prereq.data_type;
/* skip on previous errors */
}
bool first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in cl.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
}
var first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in st.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
write_indent ();
var first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in iface.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
write_indent ();
bool first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in en.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
write_indent ();
var first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in edomain.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
}
bool first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in c.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
}
bool first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in f.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
write_indent ();
var first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in cb.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
}
if (m.parent_symbol is Namespace) {
bool first = true;
- string cheaders;
+ string cheaders = "";
foreach (string cheader in m.get_cheader_filenames ()) {
if (first) {
cheaders = cheader;
Expression parse_array_creation_expression (SourceLocation begin, MemberAccess member) throws ParseError {
bool size_specified = false;
- Gee.List<Expression> size_specifier_list;
+ Gee.List<Expression> size_specifier_list = null;
bool first = true;
DataType element_type = UnresolvedType.new_from_expression (member);
do {
&& current () != TokenType.CASE
&& current () != TokenType.DEFAULT) {
try {
- Statement stmt;
+ Statement stmt = null;
bool is_decl = false;
comment = scanner.pop_comment ();
switch (current ()) {
}
} catch (ParseError e) {
int r;
- while (true) {
+ do {
r = recover ();
if (r == RecoveryState.STATEMENT_BEGIN) {
next ();
} else {
break;
}
- }
+ } while (true);
if (r == RecoveryState.EOF) {
return;
}
Report.error (init.source_reference, "Access to private member `%s' denied".printf (init.symbol_reference.get_full_name ()));
return;
}
- DataType member_type;
+ DataType member_type = null;
if (init.symbol_reference is Field) {
var f = (Field) init.symbol_reference;
member_type = f.field_type;
public long tv_sec;
public long tv_usec;
+ [CCode (cname = "g_get_current_time")]
+ public TimeVal ();
[CCode (cname = "g_get_current_time")]
public void get_current_time ();
public void add (long microseconds);
if (FileUtils.test (metadata_filename, FileTest.EXISTS)) {
try {
string metadata;
- ulong metadata_len;
- FileUtils.get_contents (metadata_filename, out metadata, out metadata_len);
+ FileUtils.get_contents (metadata_filename, out metadata, null);
foreach (string line in metadata.split ("\n")) {
if (line.has_prefix ("#")) {
start_element ("parameters");
next ();
while (current_token == MarkupTokenType.START_ELEMENT) {
- int array_length_idx = -1;
+ int array_length_idx;
var param = parse_parameter (out array_length_idx);
if (array_length_idx != -1) {
array_length_parameters.add (array_length_idx);
}
FormalParameter parse_parameter (out int array_length_idx = null) {
- FormalParameter param = null;
+ FormalParameter param;
+
+ if (&array_length_idx != null) {
+ array_length_idx = -1;
+ }
start_element ("parameter");
string name = reader.get_attribute ("name");
if (FileUtils.test (metadata_filename, FileTest.EXISTS)) {
try {
string metadata;
- ulong metadata_len;
- FileUtils.get_contents (metadata_filename, out metadata, out metadata_len);
+ FileUtils.get_contents (metadata_filename, out metadata, null);
foreach (string line in metadata.split ("\n")) {
if (line.has_prefix ("#")) {
space ();
- MarkupTokenType type;
+ MarkupTokenType type = MarkupTokenType.NONE;
char* begin = current;
token_begin.pos = begin;
token_begin.line = line;
private int check_metadata () {
try {
var metafile = new IOChannel.file (metadata.filename, "r");
- string line = null;
+ string line;
int lineno = 1;
while (IOStatus.NORMAL == metafile.read_line (out line, null, null)) {