From: Jean Privat Date: Sat, 8 Dec 2012 03:05:27 +0000 (-0500) Subject: nitg-s: allocate HashSet[MType] for conflicts_graph_cache X-Git-Tag: v0.6~189 X-Git-Url: http://nitlanguage.org nitg-s: allocate HashSet[MType] for conflicts_graph_cache A covariant cast error is raised by non-buggy engines when a MNullableType object is added into a Set[MType] that is dynamically a HashSet[MClassType]. Instantiate HashSet[MType] instead of HashSet[MClassType] remove the cast error. Signed-off-by: Jean Privat --- diff --git a/src/coloring.nit b/src/coloring.nit index 23cc5d1..7cbdda4 100644 --- a/src/coloring.nit +++ b/src/coloring.nit @@ -878,9 +878,9 @@ class LiveEntryColoring private fun add_conflict(mtype: MType, otype: MType) do if mtype == otype then return - if not self.conflicts_graph_cache.has_key(mtype) then self.conflicts_graph_cache[mtype] = new HashSet[MClassType] + if not self.conflicts_graph_cache.has_key(mtype) then self.conflicts_graph_cache[mtype] = new HashSet[MType] self.conflicts_graph_cache[mtype].add(otype) - if not self.conflicts_graph_cache.has_key(otype) then self.conflicts_graph_cache[otype] = new HashSet[MClassType] + if not self.conflicts_graph_cache.has_key(otype) then self.conflicts_graph_cache[otype] = new HashSet[MType] self.conflicts_graph_cache[otype].add(mtype) end private fun conflicts_graph: Map[MType, Set[MType]] do return conflicts_graph_cache.as(not null)