mirror of
https://github.com/micropython/micropython.git
synced 2026-01-08 05:00:26 +01:00
unix: Don't use -Wno-error=cpp or #warning; fix strict alias warning.
For the sake of older versions of gcc (and other compilers), don't use the #warning CPP directive, nor the -Wno-error=cpp option. Also, fix a strict alias warning in modffi.c for older compilers, and add a test for ffi module. Addresses issue #847.
This commit is contained in:
@@ -149,7 +149,7 @@ def main():
|
||||
if args.test_dirs is None:
|
||||
if pyb is None:
|
||||
# run PC tests
|
||||
test_dirs = ('basics', 'micropython', 'float', 'import', 'io', 'misc', 'unicode')
|
||||
test_dirs = ('basics', 'micropython', 'float', 'import', 'io', 'misc', 'unicode', 'unix')
|
||||
else:
|
||||
# run pyboard tests
|
||||
test_dirs = ('basics', 'micropython', 'float', 'pyb', 'pybnative', 'inlineasm')
|
||||
|
||||
21
tests/unix/ffi_float.py
Normal file
21
tests/unix/ffi_float.py
Normal file
@@ -0,0 +1,21 @@
|
||||
# test ffi float support
|
||||
|
||||
import ffi
|
||||
|
||||
def ffi_open(names):
|
||||
err = None
|
||||
for n in names:
|
||||
try:
|
||||
mod = ffi.open(n)
|
||||
return mod
|
||||
except OSError as e:
|
||||
err = e
|
||||
raise err
|
||||
|
||||
libc = ffi_open(('libc.so', 'libc.so.0', 'libc.so.6'))
|
||||
|
||||
strtof = libc.func("f", "strtof", "sp")
|
||||
print('%.6f' % strtof('1.23', None))
|
||||
|
||||
strtod = libc.func("d", "strtod", "sp")
|
||||
print('%.6f' % strtod('1.23', None))
|
||||
2
tests/unix/ffi_float.py.exp
Normal file
2
tests/unix/ffi_float.py.exp
Normal file
@@ -0,0 +1,2 @@
|
||||
1.230000
|
||||
1.230000
|
||||
Reference in New Issue
Block a user