You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Allan Schrum (JIRA)" <ji...@apache.org> on 2009/08/27 17:22:59 UTC

[jira] Issue Comment Edited: (AXIS2C-1379) typedef done too late in special cases - CADBBeanTemplateHeader.xsl

    [ https://issues.apache.org/jira/browse/AXIS2C-1379?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12748110#action_12748110 ] 

Allan Schrum edited comment on AXIS2C-1379 at 8/27/09 8:21 AM:
---------------------------------------------------------------

This is a duplicate of https://issues.apache.org/jira/browse/AXIS2-4432 which is probably in the wrong project.

A patch for this problem is attached.



      was (Author: allan.schrum):
    This is a duplicate of https://issues.apache.org/jira/browse/AXIS2-4432 which is probably in the wrong project.

The patch for this problem is attached.


  
> typedef done too late in special cases - CADBBeanTemplateHeader.xsl
> -------------------------------------------------------------------
>
>                 Key: AXIS2C-1379
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-1379
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: code generation, wsdl2c tool
>    Affects Versions: 1.6.0
>         Environment: Windows VS2005 and gcc 3.4.4 on Windows
>            Reporter: Alain Beauregard
>         Attachments: CircularReference.diff
>
>
> The code generated by the "class" template in CADBBeanTemplateHeader generates code that looks like the code below.
> The problem is that the typedef sometimes occurs too late.
> This happens, I believe, when an element can include itself recursively. In this case, the compiler complains when it sees X_t.
> A simple fix is to move the typedef at the top.
> --- CADBBeanTemplateHeader.xsl ---
> /**
> * X.h
> *
> * This file was auto-generated from WSDL
> * by the Apache Axis2/Java version: ...
> */
> #include "..."
> ... more #include "..."
> #include <stdio.h>
> #include <axiom.h>
> #include <axis2_util.h>
> #include <axiom_soap.h>
> #include <axis2_client.h>
> #ifdef __cplusplus
> extern "C"
> {
> #endif
> #define ADB_DEFAULT_DIGIT_LIMIT 1024
> #define ADB_DEFAULT_NAMESPACE_PREFIX_LIMIT 64
> typedef struct X  X_t;

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.