void buffer
Carlos Santander
csantander619 at gmail.com
Sat Nov 3 20:00:00 PDT 2007
Manfred Hansen escribió:
> Nathan Reed wrote:
>
>> Manfred Hansen wrote:
>>> Hello,
>>>
>>> the prorgramm under linux dmd 2.007
>>>
>>> import std.file;
>>> import std.stdio;
>>>
>>> int main() {
>>> string str1 = "Zeile 1\n", str2 = "Zeile 2 \n";
>>> const(void)[] buf;
>>>
>>> buf ~= str1; buf ~= str2;
>>> write("test_neu.txt",buf);
>>>
>>> return 0;
>>> }
>>>
>>> gives an error:
>>>
>>> ~/dd/dmd/src/phobos/std/format.d(1983): variable std.format.formatGeneric
>>> (FileWriter!(char),const( void)[]).formatGeneric.e voids have
>>> no value
>>>
>>> Have someone an idea to fix this.
>>>
>>> manni
>> You can't directly write out a void array, the standard library doesn't
>> know how to do that since a void array basically means "I don't know
>> what the type(s) of this data is/are". You'll have to cast it to string
>> before you can write it.
>>
>> Thanks,
>> Nathan Reed
>
> This example run with dmd 2.002 . I believe there has someting change
> in const/infariant situation.
>
> The write method in std.file (line 147) look like
> void write(in string name, const void[] buffer)
>
> This is what i want.
>
> Sincerely manni
>
>
>
In that case, use "std.file.write", or "alias std.file.write write" in your module.
--
Carlos Santander Bernal
More information about the Digitalmars-d-learn
mailing list