cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: VMS fixes needed to allow building.

From: Yang Tse <yangsita_at_gmail.com>
Date: Wed, 13 Mar 2013 00:10:13 +0100

On Tue, Mar 12, 2013, Tom Grace <Thomas.Grace_at_amdocs.com> wrote:

> CC (opts) DISK$USER1:[TGRACE.CURL.CURL-7_29_0.SRC]TOOL_MAIN.C;1
> [...]
> static int vms_show = 0;
> ...........^
>
> %CC-W-MIXLINKAGE, In this declaration, "vms_show" is declared with both
> internal and external linkage. The previous declaration is
>
> at line number 33 in file
> DISK$USER1:[TGRACE.CURL.CURL-7_29_0.SRC]TOOL_VMS.H;1.
>
> at line number 55 in file
> DISK$USER1:[TGRACE.CURL.CURL-7_29_0.SRC]TOOL_MAIN.C;1
>
> %LIBRAR-W-COMCOD, compilation warnings in module TOOL_MAIN file
> DISK$USER1:[TGRACE.CURL.CURL-7_29_0.PACKAGES.VMS.ALPHA]TOOL_MAIN.OBJ

Thanks a lot.

> I have fixed this with, below,,, also linker needed a symbol def as neither
> of the “extern vms_show” were providing it. This may be due to our default
> mode of the compile mode of “extern” since there are several options for
> this.
>
> $ diff tool_main.c ;1
>
> ************
> File DISK$USER1:[TGRACE.CURL.CURL-7_29_0.SRC]TOOL_MAIN.C;3
> 55 globaldef int vms_show = 0;
> 56 #endif
> ******
> File DISK$USER1:[TGRACE.CURL.CURL-7_29_0.SRC]TOOL_MAIN.C;1
> 55 static int vms_show = 0;
> 56 #endif
> ************

Ok, I understand that declaring it with 'globaldef' instead of
'static' in tool_main.c makes it a single instance variabe that is
'visible' and can be modified from any other source file which happens
to include tool_vms.h with its forward-declaration. Is this correct?

Thanks

-- 
-=[Yang]=-
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html
Received on 2013-03-13