From octave-maintainers-request at bevo dot che dot wisc dot edu Thu Aug 3 15:12:57 2000 Subject: Re: load problems From: Joao Cardoso To: octave-maintainers CC: bsapp at lanl dot gov, help-octave@bevo.che.wisc.edu Date: Thu, 03 Aug 2000 21:18:37 +0100 This is a multi-part message in MIME format. --------------7E894977EE782FECC972FD47 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit "John W. Eaton" wrote: > > On 2-Aug-2000, Ben Sapp wrote: > ... > Of course, Octave should probably also allow > > x = load ("some-odd-file-name.dat") > > so all of this would be unnecessary. Anyone care to implement it and > submit a patch? > > jwe Sure. But making x = load ("some-odd-file-name.dat") can be confusing; one could think that it is a general sintax. Instead, why not use the standard sintax, - Command: load options file v1 v2 ... Load the named variables from the file FILE. using v1 as the name of the variable to load to? The included patch, for octave 2.1.31, was made with a contex diff of 6 lines, as I have my other load-save patch in my sources. To compile I had to use the '-fpermissive' option to gcc. Even so: load-save.cc: In function `class octave_value_list do_load(istream &, const string &, bool, load_save_format, oct_mach_info::float_format, bool, bool, bool, bool, const string_vector &, int, int, int)': load-save.cc:3067: warning: assignment to `char *' from `const char *' discards qualifiers ah, how I hate C++! But I'm not a programmer, just a quick hacker! (cat|asm :-) Joao --------------7E894977EE782FECC972FD47 Content-Type: application/octet-stream; name="load-save.cc.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="load-save.cc.patch" KioqIGxvYWQtc2F2ZS5jYy5zYWZlCVRodSBBdWcgIDMgMTc6NTU6MzUgMjAwMAotLS0gbG9h ZC1zYXZlLmNjCVRodSBBdWcgIDMgMjE6MTQ6MzYgMjAwMAoqKioqKioqKioqKioqKioKKioq IDMwNTgsMzA3MiAqKioqCiAgCSAgYnJlYWs7CiAgCX0KICAgICAgICBlbHNlIGlmICghIGVy cm9yX3N0YXRlICYmIG5hbWUpCiAgCXsKICAJICBpZiAodGMuaXNfZGVmaW5lZCAoKSkKICAJ ICAgIHsKISAJICAgICAgaWYgKGZvcm1hdCA9PSBMU19NQVRfQVNDSUkgJiYgYXJndl9pZHgg PCBhcmdjKQohIAkJd2FybmluZyAoImxvYWQ6IGxvYWRlZCBBU0NJSSBmaWxlIGAlcycgLS0g aWdub3JpbmcgZXh0cmEgYXJncyIsCiEgCQkJIG9yaWdfZm5hbWUuY19zdHIgKCkpOwogIAog IAkgICAgICBpZiAoZm9ybWF0ID09IExTX01BVF9BU0NJSQogIAkJICB8fCBhcmd2X2lkeCA9 PSBhcmdjCiAgCQkgIHx8IG1hdGNoZXNfcGF0dGVybnMgKGFyZ3YsIGFyZ3ZfaWR4LCBhcmdj LCBuYW1lKSkKICAJCXsKICAJCSAgY291bnQrKzsKLS0tIDMwNTgsMzA3NCAtLS0tCiAgCSAg YnJlYWs7CiAgCX0KICAgICAgICBlbHNlIGlmICghIGVycm9yX3N0YXRlICYmIG5hbWUpCiAg CXsKICAJICBpZiAodGMuaXNfZGVmaW5lZCAoKSkKICAJICAgIHsKISAJICAgICAgaWYgKGZv cm1hdCA9PSBMU19NQVRfQVNDSUkgJiYgYXJndl9pZHggPCBhcmdjKSB7CiEgCQkvLyB3YXJu aW5nICgibG9hZDogbG9hZGVkIEFTQ0lJIGZpbGUgYCVzJyAtLSBpZ25vcmluZyBleHRyYSBh cmdzIiwgCiEgCQkvLyBvcmlnX2ZuYW1lLmNfc3RyICgpKTsKISAJCW5hbWUgPSBhcmd2W2Fy Z3ZfaWR4XS5jX3N0cigpOwohIAkgICAgICB9CiAgCiAgCSAgICAgIGlmIChmb3JtYXQgPT0g TFNfTUFUX0FTQ0lJCiAgCQkgIHx8IGFyZ3ZfaWR4ID09IGFyZ2MKICAJCSAgfHwgbWF0Y2hl c19wYXR0ZXJucyAoYXJndiwgYXJndl9pZHgsIGFyZ2MsIG5hbWUpKQogIAkJewogIAkJICBj b3VudCsrOwoqKioqKioqKioqKioqKioKKioqIDMxNzQsMzE4NSAqKioqCi0tLSAzMTc2LDMx OTEgLS0tLQogIFxuXAogIFRoZSBAY29kZXtsb2FkfSBjb21tYW5kIGNhbiByZWFkIGRhdGEg c3RvcmVkIGluIE9jdGF2ZSdzIHRleHQgYW5kXG5cCiAgYmluYXJ5IGZvcm1hdHMsIGFuZCBA c2N7TWF0bGFifSdzIGJpbmFyeSBmb3JtYXQuICBJdCB3aWxsIGF1dG9tYXRpY2FsbHlcblwK ICBkZXRlY3QgdGhlIHR5cGUgb2YgZmlsZSBhbmQgZG8gY29udmVyc2lvbiBmcm9tIGRpZmZl cmVudCBmbG9hdGluZyBwb2ludFxuXAogIGZvcm1hdHMgKGN1cnJlbnRseSBvbmx5IElFRUUg YmlnIGFuZCBsaXR0bGUgZW5kaWFuLCB0aG91Z2ggb3RoZXIgZm9ybWF0c1xuXAogIG1heSBh ZGRlZCBpbiB0aGUgZnV0dXJlKS5cblwKKyBcblwKKyBJZiBsb2FkaW5nIGZyb20gYSBnZW5l cmljIG1hdHJpeCBvcmllbnRlZCB0ZXh0IGZpbGUsIHYxIHdpbGwgc3BlY2lmeSB0aGVcblwK KyB2YXJpYWJsZSBuYW1lIHRoYXQgd2lsbCBjb250YWluIHRoZSBsb2FkZWQgZGF0YSwgb3Ro ZXJ3aXNlIHRoZSBiYXNlbmFtZSBvZlxuXAorIHRoZSBmaWxlIHdpbGwgYmUgdXNlZC5cblwK ICBcblwKICBWYWxpZCBvcHRpb25zIGZvciBAY29kZXtsb2FkfSBhcmUgbGlzdGVkIGluIHRo ZSBmb2xsb3dpbmcgdGFibGUuXG5cCiAgXG5cCiAgQHRhYmxlIEBjb2RlXG5cCiAgQGl0ZW0g LWZvcmNlXG5cCiAgRm9yY2UgdmFyaWFibGVzIGN1cnJlbnRseSBpbiBtZW1vcnkgdG8gYmUg b3ZlcndyaXR0ZW4gYnkgdmFyaWFibGVzIHdpdGhcblwK --------------7E894977EE782FECC972FD47--