nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
nitc: clean up makefile header generation
[nit.git]
/
src
/
compiler
/
abstract_compiler.nit
diff --git
a/src/compiler/abstract_compiler.nit
b/src/compiler/abstract_compiler.nit
index
cd70510
..
224de8b
100644
(file)
--- a/
src/compiler/abstract_compiler.nit
+++ b/
src/compiler/abstract_compiler.nit
@@
-349,7
+349,14
@@
class MakefileToolchain
end
var debug = toolcontext.opt_debug.value
end
var debug = toolcontext.opt_debug.value
- makefile.write("CC = ccache cc\nCXX = ccache c++\nCFLAGS = -g{ if not debug then " -O2 " else " "}-Wno-unused-value -Wno-switch -Wno-attributes -Wno-trigraphs\nCINCL =\nLDFLAGS ?= \nLDLIBS ?= -lm {linker_options.join(" ")}\n\n")
+ makefile.write """
+CC = ccache cc
+CXX = ccache c++
+CFLAGS = -g {{{if not debug then "-O2" else ""}}} -Wno-unused-value -Wno-switch -Wno-attributes -Wno-trigraphs
+CINCL =
+LDFLAGS ?=
+LDLIBS ?= -lm {{{linker_options.join(" ")}}}
+\n"""
makefile.write "\n# SPECIAL CONFIGURATION FLAGS\n"
if platform.supports_libunwind then
makefile.write "\n# SPECIAL CONFIGURATION FLAGS\n"
if platform.supports_libunwind then
@@
-1624,7
+1631,7
@@
abstract class AbstractCompilerVisitor
fun int8_instance(value: Int8): RuntimeVariable
do
var t = mmodule.int8_type
fun int8_instance(value: Int8): RuntimeVariable
do
var t = mmodule.int8_type
- var res = new RuntimeVariable("((int8_t){value.to_s})", t, t)
+ var res = new RuntimeVariable("INT8_C({value.to_s})", t, t)
return res
end
return res
end
@@
-1632,7
+1639,7
@@
abstract class AbstractCompilerVisitor
fun int16_instance(value: Int16): RuntimeVariable
do
var t = mmodule.int16_type
fun int16_instance(value: Int16): RuntimeVariable
do
var t = mmodule.int16_type
- var res = new RuntimeVariable("((int16_t){value.to_s})", t, t)
+ var res = new RuntimeVariable("INT16_C({value.to_s})", t, t)
return res
end
return res
end
@@
-1640,7
+1647,7
@@
abstract class AbstractCompilerVisitor
fun uint16_instance(value: UInt16): RuntimeVariable
do
var t = mmodule.uint16_type
fun uint16_instance(value: UInt16): RuntimeVariable
do
var t = mmodule.uint16_type
- var res = new RuntimeVariable("((uint16_t){value.to_s})", t, t)
+ var res = new RuntimeVariable("UINT16_C({value.to_s})", t, t)
return res
end
return res
end
@@
-1648,7
+1655,7
@@
abstract class AbstractCompilerVisitor
fun int32_instance(value: Int32): RuntimeVariable
do
var t = mmodule.int32_type
fun int32_instance(value: Int32): RuntimeVariable
do
var t = mmodule.int32_type
- var res = new RuntimeVariable("((int32_t){value.to_s})", t, t)
+ var res = new RuntimeVariable("INT32_C({value.to_s})", t, t)
return res
end
return res
end
@@
-1656,7
+1663,7
@@
abstract class AbstractCompilerVisitor
fun uint32_instance(value: UInt32): RuntimeVariable
do
var t = mmodule.uint32_type
fun uint32_instance(value: UInt32): RuntimeVariable
do
var t = mmodule.uint32_type
- var res = new RuntimeVariable("((uint32_t){value.to_s})", t, t)
+ var res = new RuntimeVariable("UINT32_C({value.to_s})", t, t)
return res
end
return res
end
@@
-2626,10
+2633,10
@@
redef class AMethPropdef
v.ret(v.new_expr("(char*){alloc}", ret.as(not null)))
return true
else if pname == "fetch_4_chars" then
v.ret(v.new_expr("(char*){alloc}", ret.as(not null)))
return true
else if pname == "fetch_4_chars" then
- v.ret(v.new_expr("(long)*((uint32_t*)({arguments[0]} + {arguments[1]}))", ret.as(not null)))
+ v.ret(v.new_expr("*((uint32_t*)({arguments[0]} + {arguments[1]}))", ret.as(not null)))
return true
else if pname == "fetch_4_hchars" then
return true
else if pname == "fetch_4_hchars" then
- v.ret(v.new_expr("(long)be32toh(*((uint32_t*)({arguments[0]} + {arguments[1]})))", ret.as(not null)))
+ v.ret(v.new_expr("(uint32_t)be32toh(*((uint32_t*)({arguments[0]} + {arguments[1]})))", ret.as(not null)))
return true
end
else if cname == "NativeArray" then
return true
end
else if cname == "NativeArray" then
@@
-3071,7
+3078,7
@@
redef class AMethPropdef
end
end
if pname == "exit" then
end
end
if pname == "exit" then
- v.add("exit({arguments[1]});")
+ v.add("exit((int){arguments[1]});")
return true
else if pname == "sys" then
v.ret(v.new_expr("glob_sys", ret.as(not null)))
return true
else if pname == "sys" then
v.ret(v.new_expr("glob_sys", ret.as(not null)))