mescc: Respect integer literal type suffixes.
* module/mescc/compile.scm (ast->type): Respect ULL, UL, U, LL, L suffix on integer literals.
This commit is contained in:
parent
557c1d558a
commit
3607e8788e
|
@ -116,7 +116,14 @@
|
||||||
|
|
||||||
((char ,value) (get-type "char" info))
|
((char ,value) (get-type "char" info))
|
||||||
((enum-ref . _) (get-type "default" info))
|
((enum-ref . _) (get-type "default" info))
|
||||||
((fixed ,value) (get-type "default" info))
|
((fixed ,value)
|
||||||
|
(let ((type (cond ((string-suffix? "ULL"value) "unsigned long long")
|
||||||
|
((string-suffix? "UL" value) "unsigned long")
|
||||||
|
((string-suffix? "U" value) "unsigned")
|
||||||
|
((string-suffix? "LL" value) "long long")
|
||||||
|
((string-suffix? "L" value) "long")
|
||||||
|
(else "default"))))
|
||||||
|
(get-type type info)))
|
||||||
((float ,float) (get-type "float" info))
|
((float ,float) (get-type "float" info))
|
||||||
((void) (get-type "void" info))
|
((void) (get-type "void" info))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue