translator/c/test/test_standalone.py::TestStandalone::()::test_frexp
self = <rpython.translator.c.test.test_standalone.TestStandalone object at 0x00000000360ea608>
def test_frexp(self):
import math
def entry_point(argv):
m, e = math.frexp(0)
x, y = math.frexp(0)
print m, x
return 0
> t, cbuilder = self.compile(entry_point)
translator/c/test/test_standalone.py:235:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
translator/c/test/test_standalone.py:84: in compile
t, builder = StandaloneTests.compile(self, *args, **kwds)
translator/c/test/test_standalone.py:72: in compile
exe_name=exe_name)
translator/c/genc.py:214: in generate_source
self.eci, defines=defines, split=self.split)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
database = <rpython.translator.c.database.LowLevelDatabase object at 0x00000000381508a8>
modulename = 'testing_4'
targetdir = local('/tmp/pytest/usession-main-3874/testing_4')
eci = <ExternalCompilationInfo (pre_include_bits=('/* using RefcountingGCTransformer...iles=(), testonly_libraries=(), use_cpp_linker=False, platform=<Linux cc=gcc>)>
defines = {'PYPY_LONGLONG_BIT': 64, 'PYPY_LONG_BIT': 64, 'PYPY_STANDALONE': 'pypy_g_entrypoint_wrapper', 'RPY_ASSERT': 1, ...}
split = True
def gen_source(database, modulename, targetdir,
eci, defines={}, split=False):
if isinstance(targetdir, str):
targetdir = py.path.local(targetdir)
filename = targetdir.join(modulename + '.c')
f = filename.open('w')
incfilename = targetdir.join('common_header.h')
fi = incfilename.open('w')
fi.write('#ifndef _PY_COMMON_HEADER_H\n#define _PY_COMMON_HEADER_H\n')
#
# Header
#
print('#include "common_header.h"', file=f)
print(file=f)
commondefs(defines)
for key, value in defines.items():
print('#define %s %s' % (key, value), file=fi)
eci.write_c_header(fi)
print('#include "src/g_prerequisite.h"', file=fi)
fi.write('#endif /* _PY_COMMON_HEADER_H*/\n')
> fi.close()
E IOError: [Errno 28] No space left on device: '/tmp/pytest/usession-main-3874/testing_4/common_header.h'
translator/c/genc.py:871: IOError
---------- Captured stderr call ----------
[rtyper] specializing: 100 / 468 blocks (21%)
[rtyper] specializing: 200 / 537 blocks (37%)
[rtyper] specializing: 300 / 707 blocks (42%)
[rtyper] specializing: 400 / 707 blocks (56%)
[rtyper] specializing: 500 / 707 blocks (70%)
[rtyper] specializing: 600 / 709 blocks (84%)
[rtyper] specializing: 700 / 713 blocks (98%)
[rtyper] -=- specialized 713 blocks -=-
[rtyper] -=- specialized 19 more blocks -=-
[rtyper] -=- specialized 2 more blocks -=-
[rtyper] -=- specialized 4 more blocks -=-
[rtyper] -=- specialized 25 more blocks -=-
[rtyper] specializing: 800 / 823 blocks (97%)
[rtyper] -=- specialized 60 more blocks -=-
[backendopt:inlining] phase with threshold factor: 32.4
[backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic
[backendopt:inlining] inlined 6 callsites.
[backendopt:malloc] starting malloc removal
[backendopt:malloc] removed 0 simple mallocs in total
[backendopt:mergeifblocks] starting to merge if blocks
[rtyper] specializing: 900 / 907 blocks (99%)
[rtyper] -=- specialized 84 more blocks -=-
[rtyper] -=- specialized 0 more blocks -=-
[rtyper] -=- specialized 38 more blocks -=-
[backendopt:inlining] phase with threshold factor: 32.4
[backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic
[backendopt:inlining] inlined 1 callsites.
[backendopt:malloc] starting malloc removal
[backendopt:malloc] removed 0 simple mallocs in total
[backendopt:mergeifblocks] starting to merge if blocks
[backendopt:malloc] removed 0 simple mallocs in total
[c:database] GC transformer: finished helpers
[c:database] GC transformer: finished tables
[c:database] Inlining GC helpers and postprocessing
[c] 479 nodes [ array: 42 func: 220 refcnt rtti: 18 struct: 199 ]
[c:database] Completed
builder: rpython-linux-aarch64 build #572+
test: translator/c/test/test_standalone.py::TestStandalone::()::test_frexp