From: Jürg Billeter Date: Sun, 16 Aug 2009 21:24:43 +0000 (+0200) Subject: Report error when trying to modify strings X-Git-Tag: 0.7.6~186 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5d4fa8b1e0627fb89d436308d4170238419d73da;p=thirdparty%2Fvala.git Report error when trying to modify strings Fixes bug 588038. --- diff --git a/vala/valaassignment.vala b/vala/valaassignment.vala index af481989c..dccf13e1c 100644 --- a/vala/valaassignment.vala +++ b/vala/valaassignment.vala @@ -145,7 +145,11 @@ public class Vala.Assignment : Expression { } else if (left is ElementAccess) { var ea = (ElementAccess) left; - if (ea.container is MemberAccess && ea.container.symbol_reference is Signal) { + if (ea.container.value_type.data_type == analyzer.string_type.data_type) { + error = true; + Report.error (ea.source_reference, "strings are immutable"); + return false; + } else if (ea.container is MemberAccess && ea.container.symbol_reference is Signal) { var ma = (MemberAccess) ea.container; var sig = (Signal) ea.container.symbol_reference; right.target_type = new DelegateType (sig.get_delegate (ma.inner.value_type, this));