- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL terminat...
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-09-2011 05:35 AM
тАО03-09-2011 05:35 AM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
IA64 Dec C compiler for OpenVMS: Includes fix for problem related to specifying /POINTER_SIZE=LONG=ARGV, the argv argument to main, which comprised of long pointers, was not terminated with NULL.
This problem has been corrected HP-I64VMS-C-V0703-019ECO1-1
I would seem the problem was the same root issue. I didn't see a matching Alpha patch.
-Jeff
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-09-2011 07:08 AM
тАО03-09-2011 07:08 AM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
For all I know, there's
some POSIX standard (or something) which
demands that argv[] be NULL-terminated [...]
"
It is in the C standard. From ISO/IEC 9899:201x
5.1.2.2.1 Program startup
1 The function called at program startup is named main. The implementation declares no
prototype for this function. It shall be defined with a return type of int and with no
parameters:
int main(void) { /* ... */ }
or with two parameters (referred to here as argc and argv, though any names may be
used, as they are local to the function in which they are declared):
int main(int argc, char *argv[]) { /* ... */ }
or equivalent;9) or in some other implementation-defined manner.
2 If they are declared, the parameters to the main function shall obey the following
constraints:
├в The value of argc shall be nonnegative.
├в argv[argc] shall be a null pointer.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-11-2011 08:01 PM
тАО03-11-2011 08:01 PM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
Have you tried printing that address? Perhaps only 32 bits is zero?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-11-2011 08:20 PM
тАО03-11-2011 08:20 PM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
Have you tried reading this thread?
> Perhaps only 32 bits is zero?
We're little-endian here, so values like:
> [...] ptr: %x000000007adcd870 [...]
(Mar 8, 2011 04:15:28 GMT)
or:
> [...] (got 7FF57810)
(Mar 8, 2011 21:22:47 GMT)
aren't even zero at the beginning (the
low-significance end).
But thanks for playing.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-11-2011 08:54 PM
тАО03-11-2011 08:54 PM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
I would seem the problem was the same root issue. I didn't see a matching Alpha patch.
---
I've seen some internal-to-HP communication on this one, and apparently VMS Engineering states that an Alpha patch is in the works.
I have no idea when it's due to hit the streets.
-- Rob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-11-2011 09:19 PM
тАО03-11-2011 09:19 PM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
> HP-I64VMS-C-V0703-019ECO1-1
Hey. Sure enough. That's so old that even
_I_ have it:
IT $ cc /version
HP C V7.3-019 on OpenVMS IA64 V8.3-1H1
which explains why I saw the problem only on
Alpha (V7.3-009).
I probably read the ".txt" file when I
downloaded the patch, but figured that I'd
never care, and promptly forgot all about it.
(It's not my fault. This 64-bit pointer
stuff was all someone else's idea. I may
still never care for my own purposes.)
> [...] an Alpha patch is in the works.
> I have no idea when it's due to hit the
> streets.
That's nice to know, but, of course, a lowly
hobbyist peon like me may never see it, as I
can no longer gain access to those streets.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-12-2011 05:59 AM
тАО03-12-2011 05:59 AM
Re: CC /POINTER_SIZE=64=ARGV, Alpha, NULL termination of argv[]?
Oops, sorry I missed that.
It would have helped if you printed them as increasing:
"argv[%d] = ptr: %p, %s\n", i, &argv[i], argv[i]
>aren't even zero at the beginning (the low-significance end).
Yes.
- « Previous
-
- 1
- 2
- Next »