[gobject-introspection] giscanner: don't generate synthetic names for '...' parameter



commit 66c52d09102da8f8d808bfbf2c420dda4e7e8ee3
Author: Dieter Verfaillie <dieterv optionexplicit be>
Date:   Mon Jul 29 15:25:56 2013 +0200

    giscanner: don't generate synthetic names for '...' parameter
    
    tests/warn/unkown-parameter.h:41 still passes with this...

 giscanner/transformer.py                           |   16 ++++++++--------
 .../Regress.FooObject.take_all.page                |    2 +-
 tests/scanner/Regress-1.0-expected.gir             |    4 ++--
 3 files changed, 11 insertions(+), 11 deletions(-)
---
diff --git a/giscanner/transformer.py b/giscanner/transformer.py
index b9c8ea6..bd476cc 100644
--- a/giscanner/transformer.py
+++ b/giscanner/transformer.py
@@ -673,18 +673,18 @@ raise ValueError."""
 
     def _create_parameter(self, parent_symbol, index, symbol):
         if symbol.type == CSYMBOL_TYPE_ELLIPSIS:
-            ptype = ast.Varargs()
+            return ast.Parameter('...', ast.Varargs())
         else:
             ptype = self._create_type_from_base(symbol.base_type, is_parameter=True)
 
-        if symbol.ident is None:
-            if symbol.base_type and symbol.base_type.type != CTYPE_VOID:
-                message.warn_symbol(parent_symbol, "missing parameter name; undocumentable")
-            ident = 'arg%d' % (index, )
-        else:
-            ident = symbol.ident
+            if symbol.ident is None:
+                if symbol.base_type and symbol.base_type.type != CTYPE_VOID:
+                    message.warn_symbol(parent_symbol, "missing parameter name; undocumentable")
+                ident = 'arg%d' % (index, )
+            else:
+                ident = symbol.ident
 
-        return ast.Parameter(ident, ptype)
+            return ast.Parameter(ident, ptype)
 
     def _create_return(self, source_type):
         typeval = self._create_type_from_base(source_type, is_return=True)
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
index 3947b3c..92d7543 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
@@ -49,7 +49,7 @@ void regress_foo_object_take_all (RegressFooObject* object,
 
 </item>
 <item>
-<title><code>arg2</code></title>
+<title><code>...</code></title>
 
 </item>
 <item>
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir
index 070f992..f9ba48c 100644
--- a/tests/scanner/Regress-1.0-expected.gir
+++ b/tests/scanner/Regress-1.0-expected.gir
@@ -1475,7 +1475,7 @@ uses a C sugar return type.</doc>
           <parameter name="x" transfer-ownership="none">
             <type name="gint" c:type="int"/>
           </parameter>
-          <parameter name="arg2" transfer-ownership="none">
+          <parameter name="..." transfer-ownership="none">
             <varargs>
             </varargs>
           </parameter>
@@ -1905,7 +1905,7 @@ exposed to language bindings.</doc>
         <parameter name="param" transfer-ownership="none">
           <type name="utf8" c:type="const char*"/>
         </parameter>
-        <parameter name="arg1" transfer-ownership="none">
+        <parameter name="..." transfer-ownership="none">
           <varargs>
           </varargs>
         </parameter>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]