[MacPorts] #17206: PCRE make fails

MacPorts noreply at macports.org
Wed Nov 12 12:09:49 PST 2008


#17206: PCRE make fails
---------------------------------+------------------------------------------
  Reporter:  glend at mail.nih.gov  |       Owner:  nox at macports.org
      Type:  defect              |      Status:  assigned        
  Priority:  Normal              |   Milestone:  Port Bugs       
 Component:  ports               |     Version:  1.6.0           
Resolution:                      |    Keywords:                  
      Port:  pcre                |  
---------------------------------+------------------------------------------

Comment(by glend at mail.nih.gov):

 import unittest
 from test import test_support

 class ComplexArgsTestCase(unittest.TestCase):

     def check(self, func, expected, *args):
         self.assertEqual(func(*args), expected)

     # These functions are tested below as lambdas too.  If you add a
 function test,
     # also add a similar lambda test.

     def test_func_parens_no_unpacking(self):
         def f(((((x))))): return x
         self.check(f, 1, 1)
         # Inner parens are elided, same as: f(x,)
         def f(((x)),): return x
         self.check(f, 2, 2)

     def test_func_1(self):
         def f(((((x),)))): return x
         self.check(f, 3, (3,))
         def f(((((x)),))): return x
         self.check(f, 4, (4,))
         def f(((((x))),)): return x
         self.check(f, 5, (5,))
         def f(((x),)): return x
         self.check(f, 6, (6,))

     def test_func_2(self):
         def f(((((x)),),)): return x
         self.check(f, 2, ((2,),))

     def test_func_3(self):
         def f((((((x)),),),)): return x
         self.check(f, 3, (((3,),),))

     def test_func_complex(self):
         def f((((((x)),),),), a, b, c): return x, a, b, c
         self.check(f, (3, 9, 8, 7), (((3,),),), 9, 8, 7)

         def f(((((((x)),)),),), a, b, c): return x, a, b, c
         self.check(f, (3, 9, 8, 7), (((3,),),), 9, 8, 7)

         def f(a, b, c, ((((((x)),)),),)): return a, b, c, x
         self.check(f, (9, 8, 7, 3), 9, 8, 7, (((3,),),))

     # Duplicate the tests above, but for lambda.  If you add a lambda
 test,
     # also add a similar function test above.

     def test_lambda_parens_no_unpacking(self):
         f = lambda (((((x))))): x
         self.check(f, 1, 1)
         # Inner parens are elided, same as: f(x,)
         f = lambda ((x)),: x
         self.check(f, 2, 2)

     def test_lambda_1(self):
         f = lambda (((((x),)))): x
         self.check(f, 3, (3,))
         f = lambda (((((x)),))): x
         self.check(f, 4, (4,))
         f = lambda (((((x))),)): x
         self.check(f, 5, (5,))
         f = lambda (((x),)): x
         self.check(f, 6, (6,))

     def test_lambda_2(self):
         f = lambda (((((x)),),)): x
         self.check(f, 2, ((2,),))

     def test_lambda_3(self):
         f = lambda ((((((x)),),),)): x
         self.check(f, 3, (((3,),),))

     def test_lambda_complex(self):
         f = lambda (((((x)),),),), a, b, c: (x, a, b, c)
         self.check(f, (3, 9, 8, 7), (((3,),),), 9, 8, 7)

         f = lambda ((((((x)),)),),), a, b, c: (x, a, b, c)
         self.check(f, (3, 9, 8, 7), (((3,),),), 9, 8, 7)

         f = lambda a, b, c, ((((((x)),)),),): (a, b, c, x)
         self.check(f, (9, 8, 7, 3), 9, 8, 7, (((3,),),))


 def test_main():
     test_support.run_unittest(ComplexArgsTestCase)

 if __name__ == "__main__":
     test_main()
 ol uncaught_exception() throw();
 } // namespace std

 namespace __gnu_cxx
 {
   /** A replacement for the standard terminate_handler which prints more
       information about the terminating exception (if any) on stderr.
 Call
       @code
         std::set_terminate (__gnu_cxx::__verbose_terminate_handler)
       @endcode
       to use.  For more info, see
       http://gcc.gnu.org/onlinedocs/libstdc++/19_diagnostics/howto.html#4

       In 3.4 and later, this is on by default.
   */
   void __verbose_terminate_handler ();
 } // namespace __gnu_cxx

 } // extern "C++"

 #pragma GCC visibility pop

 #endif

-- 
Ticket URL: <http://trac.macports.org/ticket/17206#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list