nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge: More keep going
[nit.git]
/
src
/
rapid_type_analysis.nit
diff --git
a/src/rapid_type_analysis.nit
b/src/rapid_type_analysis.nit
index
734a76a
..
d81d1c7
100644
(file)
--- a/
src/rapid_type_analysis.nit
+++ b/
src/rapid_type_analysis.nit
@@
-213,6
+213,7
@@
class RapidTypeAnalysis
force_alive("Float")
force_alive("Char")
force_alive("Pointer")
force_alive("Float")
force_alive("Char")
force_alive("Pointer")
+ force_alive("Byte")
while not todo.is_empty do
var mmethoddef = todo.shift
while not todo.is_empty do
var mmethoddef = todo.shift
@@
-525,6
+526,13
@@
redef class AIntExpr
end
end
end
end
+redef class AByteExpr
+ redef fun accept_rapid_type_visitor(v)
+ do
+ v.add_type(self.mtype.as(MClassType))
+ end
+end
+
redef class AFloatExpr
redef fun accept_rapid_type_visitor(v)
do
redef class AFloatExpr
redef fun accept_rapid_type_visitor(v)
do
@@
-568,7
+576,7
@@
redef class ASuperstringExpr
redef fun accept_rapid_type_visitor(v)
do
var mmodule = v.analysis.mainmodule
redef fun accept_rapid_type_visitor(v)
do
var mmodule = v.analysis.mainmodule
- var object_type = mmodule.object_type
+ var object_type = mmodule.string_type
var arraytype = mmodule.array_type(object_type)
v.add_type(arraytype)
var nattype = mmodule.native_array_type(object_type)
var arraytype = mmodule.array_type(object_type)
v.add_type(arraytype)
var nattype = mmodule.native_array_type(object_type)