Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OS400 fails to build 7.86.0, curl_socklen_t referenced before its defined #9811

Closed
jonrumsey opened this issue Oct 27, 2022 · 0 comments
Closed
Labels

Comments

@jonrumsey
Copy link
Contributor

jonrumsey commented Oct 27, 2022

I did this

Attempted to build curl 7.86.0 on IBM i V7R4M0

CZM1003:  /curl/src/curl-7.86.0/lib/setup-os400.h, 54.31: CZM0046(30) Syntax error.
CZS1601:  Program CHKSTRINGS is not created because statement errors occurred.
CZM1613:  The compilation failed.

The order of the includes in curl_setup.h was changed by
#9453
so that curl.h is now included after platform specific headers (i.e. setup-os400.h) and the typedef of curl_socklen_t is now after being referenced in a prototype like;

   53       |extern int Curl_getnameinfo_a(const struct sockaddr *sa,                 
   54       |                              curl_socklen_t salen,                      
===========> ..............................a..........................................
*=SEVERE==========> a - CZM0046  Syntax error.                                        
   55       |                              char *nodename, curl_socklen_t nodenamelen,
   56       |                              char *servname, curl_socklen_t servnamelen,
   57       |                              int flags);                                

I think the right fix here is to keep the order of the includes but change the prototype of the platform specific ASCII wrapper to use the platform socklen_t, to match the prototype for getnameinfo, and not use the curl_socklen_t.

I expected the following

Clean build

curl/libcurl version

curl 7.86.0

operating system

IBM i V7R4M0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants