[ 
https://issues.apache.org/jira/browse/PROTON-515?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15130551#comment-15130551
 ] 

Andrew Stitcher commented on PROTON-515:
----------------------------------------

1) Seems like a strange platform behaviour, but I think it'll work if you 
follow the plan I outlined.

2) I think you have misunderstood the purpose of the statics:

_PN_HANDLE_ ## name is used only used to get the compiler to allocate a unique 
address in the program address space. This address is then converted into an 
integer and used as a handle for the record type.

This handle needs to be unique for the entire program even if the variable that 
holds it is static - that's because it is used by the logic that attaches 
records to events to distinguish the various record types.

I think this limitation of your linker is pretty serious, because every scheme 
I can think of to generate this unique ids straightforwardly involves getting 
the linker to allocate some space in the program get its address and use that 
as the handle.

Perhaps we could make the pn_handle_t actually use a void* as its type - that 
might work around the linker (as the message implied that it was converting to 
a non pointer type that is the issue).

> Port to OpenVMS
> ---------------
>
>                 Key: PROTON-515
>                 URL: https://issues.apache.org/jira/browse/PROTON-515
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: proton-c
>    Affects Versions: 0.11.1
>         Environment: OpenVMS
>            Reporter: Tomas Soltys
>            Assignee: Andrew Stitcher
>              Labels: OpenVMS, patch
>         Attachments: io.c.patch, object.h.patch
>
>
> There is a need for proton-c port to OpenVMS platform.
> To make proton-c functional on OpenVMS few changes in the source code are 
> required.
> Here is list of files I have identified which require some attention:
> proton-c/src/platform_fmt.h
> proton-c/src/posix/driver.c
> proton-c/src/object/object.c
> proton-c/src/codec/codec.c



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to