Comment #1 by witold.baryluk+d — 2007-05-24T17:10:04Z
They are also omited after version:
.d
version(id) { x; y; } else { z; h; }
.di
version(id) x; y; else { z; h; }
Comment #2 by dprogramming — 2007-06-12T15:06:50Z
I can confirm that the static ifs are still losing the braces in DMD 1.015.
Comment #3 by smjg — 2007-09-29T07:44:53Z
What exactly is this header generation to which you refer?
Comment #4 by benoit — 2007-09-29T08:13:32Z
(In reply to comment #3)
> What exactly is this header generation to which you refer?
>
"dmd -H"
Comment #5 by smjg — 2007-09-29T08:24:40Z
Oh yes. But it's puzzling me that, in the first example, the generated header code seems to bear little relation to the original code.
Comment #6 by benoit — 2007-09-29T08:32:13Z
(In reply to comment #5)
> Oh yes. But it's puzzling me that, in the first example, the generated header
> code seems to bear little relation to the original code.
>
yes, i probably hand edited the code to cut out unrelevant info. So the value was renamed to key. Nevertheless it shows that the necessary braces are missing.
Comment #7 by witold.baryluk+d — 2009-03-07T05:08:15Z
1.039 works correctly for first example. Second is not reproductible, next time send full examples.
# cat d1133.d
class A {
Object[Object] mData;
public synchronized bool contains( Object value ){
return (( value in mData ) !is null );
}
}
# dmd-1.039 d1133.d -c -H
# cat d1133.di
// D import file generated from 'd1.d'
class A
{
Object[Object] mData;
public
{
synchronized
{
bool contains(Object value)
{
return (value in mData) !is null;
}
}
}
}
# dmd-2.026 -c -H d1133.d
# cat d1133.di
// D import file generated from 'd1.d'
class A
{
Object[Object] mData;
public
{
synchronized
{
bool contains(Object value)
{
return (value in mData) !is null;
}
}
}
}