'Test a compiled function with starargs in the signature.'

def test_star_args(self):

    (f, check) = self.compile_func(star_defaults)
    check(4)
    check(4, 5)
    check(4, 5, 6)
    check(4, 5, 6, 7)
    check(4, 5, 6, 7, 8)
    check(x=4)
    check(x=4, y=5)
    check(4, y=5)
    with self.assertRaises(TypeError) as cm:
        f(4, 5, y=6)
    self.assertIn('some    keyword    arguments    unexpected', str(cm.exception))
    with self.assertRaises(TypeError) as cm:
        f(4, 5, z=6)
    self.assertIn('some    keyword    arguments    unexpected', str(cm.exception))
    with self.assertRaises(TypeError) as cm:
        f(4, x=6)
    self.assertIn('some    keyword    arguments    unexpected', str(cm.exception))
