eliminate streamoff type? (was Re: CVS build error with new sort)
John W. Eaton
jwe at bevo.che.wisc.edu
Wed Apr 2 12:11:59 CDT 2008
On 2-Apr-2008, John W. Eaton wrote:
| On 2-Apr-2008, Thomas Treichl wrote:
|
| | Some time has been passed on this thread but the problem still follows me on
| | MacOSX. You have been right with std::streamoff==long long int. I also tried to
| | use several variations of -weak options for the linker but has not been successful.
| |
| | So I gave it a try to write a configure test for it. Can somebody please have a
| | look at it and tell me if this would be the right way to do it (can the
| | AC_CHECK_TYPES for std::streamoff be neglected)? If so then I can prepare a
| | changeset for the current sources the following days. My idea was then to change
| |
| | liboctave/Array-i.cc:#if defined (HAVE_LONG_LONG_INT)
| |
| | into
| |
| | liboctave/Array-i.cc:#if defined (HAVE_LONG_LONG_INT) &&
| | !defined (HAVE_LONG_LONG_INT_STREAMOFF)
|
| I think we need to check whether streamoff is actually a typedef for
| "long long int", not just that it has the same size. For example, if
| it is a class that happens to have the same size, I think we would
| need to instantiate arrays of streamoff objects separately from Arrays
| of "long long int" objects.
Another possibility is to eliminate the streamoff type. Do we really
need it now? As I recall, the original reason for having it was to
handle file positions for C++ streams. But now the streams that are
created with fopen/popen/etc. in Octave are all managed as C-style
FILE pointers, so maybe the streamoff type is no longer needed?
jwe
More information about the Octave-maintainers
mailing list