Jump to page: 1 216  
Page
Thread overview
Re: Compilation strategy
Dec 15, 2012
Russel Winder
Dec 16, 2012
Blub
Dec 16, 2012
Timon Gehr
Dec 16, 2012
Paulo Pinto
Dec 16, 2012
H. S. Teoh
Dec 16, 2012
Paulo Pinto
Dec 16, 2012
Andrej Mitrovic
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Rob T
Dec 16, 2012
Jonathan M Davis
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
H. S. Teoh
Dec 17, 2012
Walter Bright
Dec 17, 2012
Jonathan M Davis
Dec 17, 2012
Walter Bright
Dec 17, 2012
Jonathan M Davis
Dec 17, 2012
Walter Bright
Dec 17, 2012
Jonathan M Davis
Dec 17, 2012
Adam Wilson
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
deadalnix
Dec 17, 2012
Jacob Carlborg
Dec 18, 2012
Adam Wilson
Dec 17, 2012
Walter Bright
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Walter Bright
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Walter Bright
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
Walter Bright
Dec 17, 2012
Iain Buclaw
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
mist
Dec 17, 2012
Walter Bright
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
eles
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
eles
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
H. S. Teoh
Dec 17, 2012
Walter Bright
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
Jacob Carlborg
Dec 18, 2012
foobar
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
Walter Bright
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
Walter Bright
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
Walter Bright
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Rob T
Dec 17, 2012
Walter Bright
Dec 17, 2012
jerro
Dec 17, 2012
Iain Buclaw
Dec 17, 2012
jerro
Dec 17, 2012
Rob T
Dec 17, 2012
deadalnix
Dec 17, 2012
Jonathan M Davis
Dec 17, 2012
deadalnix
Dec 17, 2012
Jonathan M Davis
Dec 17, 2012
deadalnix
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
deadalnix
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Walter Bright
Dec 17, 2012
Paulo Pinto
Dec 17, 2012
Walter Bright
Dec 17, 2012
deadalnix
Dec 17, 2012
Walter Bright
Dec 17, 2012
deadalnix
Dec 18, 2012
Walter Bright
Dec 18, 2012
deadalnix
Dec 18, 2012
Walter Bright
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
evilrat
Dec 18, 2012
Walter Bright
Dec 18, 2012
Rob T
Dec 18, 2012
Walter Bright
Dec 18, 2012
Rob T
Dec 18, 2012
Walter Bright
Dec 18, 2012
Rob T
Dec 18, 2012
Rob T
Dec 18, 2012
Rob T
Dec 18, 2012
Simen Kjaeraas
Dec 18, 2012
Walter Bright
Dec 18, 2012
Dmitry Olshansky
Dec 18, 2012
Walter Bright
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
Walter Bright
Dec 18, 2012
Dmitry Olshansky
Dec 18, 2012
Walter Bright
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
Walter Bright
Dec 18, 2012
H. S. Teoh
Dec 18, 2012
Timon Gehr
Dec 18, 2012
Walter Bright
Dec 18, 2012
Dmitry Olshansky
Dec 18, 2012
Walter Bright
Dec 19, 2012
Dmitry Olshansky
Dec 19, 2012
foobar
Dec 19, 2012
Rob T
Dec 17, 2012
Walter Bright
Dec 17, 2012
deadalnix
Dec 17, 2012
Walter Bright
Dec 17, 2012
deadalnix
Dec 17, 2012
Walter Bright
Dec 17, 2012
Rob T
Dec 17, 2012
Walter Bright
Dec 17, 2012
bearophile
Dec 17, 2012
Andrej Mitrovic
Dec 17, 2012
foobar
Dec 17, 2012
Rob T
Dec 18, 2012
Walter Bright
Dec 18, 2012
foobar
Dec 18, 2012
Andrej Mitrovic
D Frontend and shared code base (moving away from calling it DMD front-end).
Dec 18, 2012
Iain Buclaw
Dec 18, 2012
Andrej Mitrovic
Dec 18, 2012
Iain Buclaw
Dec 18, 2012
Walter Bright
Dec 18, 2012
Walter Bright
Dec 18, 2012
Jacob Carlborg
Dec 18, 2012
Paulo Pinto
Dec 17, 2012
Denis Koroskin
Dec 18, 2012
Walter Bright
Dec 15, 2012
Iain Buclaw
Dec 15, 2012
H. S. Teoh
Dec 15, 2012
Jonathan M Davis
Dec 16, 2012
Iain Buclaw
Dec 16, 2012
Walter Bright
Dec 16, 2012
Iain Buclaw
Dec 16, 2012
Walter Bright
Dec 16, 2012
Paulo Pinto
Dec 16, 2012
Iain Buclaw
Dec 16, 2012
David Nadlinger
Dec 16, 2012
Jacob Carlborg
Dec 16, 2012
Walter Bright
Dec 16, 2012
Simen Kjaeraas
Dec 16, 2012
Walter Bright
Dec 18, 2012
Jacob Carlborg
Dec 18, 2012
Walter Bright
Dec 16, 2012
deadalnix
Dec 16, 2012
Walter Bright
Dec 17, 2012
deadalnix
Dec 17, 2012
Walter Bright
Dec 16, 2012
Jonathan M Davis
Dec 17, 2012
Jacob Carlborg
Dec 17, 2012
Walter Bright
December 15, 2012
On Sat, 2012-12-15 at 16:55 +0000, Russel Winder wrote:
> A quick straw poll.  Do people prefer to have all sources compiled in a single compiler call, or (more like C++) separate compilation of each object followed by a link call.

Oh and I should have asked: do you do things differently when using:

	dmd
	gdc
	ldc

for:

	programs
	shared libraries
	static libraries

Thanks.

-- 
Russel. ============================================================================= Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@winder.org.uk London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder


December 15, 2012
On 15 December 2012 16:55, Russel Winder <russel@winder.org.uk> wrote:

> A quick straw poll.  Do people prefer to have all sources compiled in a single compiler call, or (more like C++) separate compilation of each object followed by a link call.
>
> Thanks.
>
>
I do believe there are still some strange linker bugs that occur if you compile separately vs. single compilation.  Don't ask for examples, it'll take me hours or days to hunt them down in my archives. :-)


-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


December 15, 2012
On Sat, Dec 15, 2012 at 06:42:27PM +0000, Iain Buclaw wrote:
> On 15 December 2012 16:55, Russel Winder <russel@winder.org.uk> wrote:
> 
> > A quick straw poll.  Do people prefer to have all sources compiled in a single compiler call, or (more like C++) separate compilation of each object followed by a link call.
> >
> > Thanks.
> >
> >
> I do believe there are still some strange linker bugs that occur if you compile separately vs. single compilation.  Don't ask for examples, it'll take me hours or days to hunt them down in my archives. :-)
[...]

Isn't that just some compiler bugs that sometimes cause certain symbols not to be instantiated in the object file? IMO, such bugs should be fixed in the compiler, rather than force the user to compile one way or another.


T

-- 
Bare foot: (n.) A device for locating thumb tacks on the floor.
December 15, 2012
On Saturday, December 15, 2012 10:44:56 H. S. Teoh wrote:
> Isn't that just some compiler bugs that sometimes cause certain symbols not to be instantiated in the object file? IMO, such bugs should be fixed in the compiler, rather than force the user to compile one way or another.

Well obviously. They're bugs. Of course they should be fixed. But as long as they haven't been fixed, we have to work around them, which means compiling everything at once.

- Jonathan M Davis
December 16, 2012
On 15 December 2012 18:52, Jonathan M Davis <jmdavisProg@gmx.com> wrote:

> On Saturday, December 15, 2012 10:44:56 H. S. Teoh wrote:
> > Isn't that just some compiler bugs that sometimes cause certain symbols not to be instantiated in the object file? IMO, such bugs should be fixed in the compiler, rather than force the user to compile one way or another.
>
> Well obviously. They're bugs. Of course they should be fixed. But as long
> as
> they haven't been fixed, we have to work around them, which means compiling
> everything at once.
>
> - Jonathan M Davis
>


Probably won't be easy (if bug still exists).  To describe it (I'll try to find a working example later) - when compiled separately, both modules claim the symbol is extern to their scope.  However when compiled under one compilation unit, the compiler has substantially more information regarding the symbol and sends it to the backend to be written.


If I don't find it by Monday, you'll have to wait until the new year when I return. :-)


-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


December 16, 2012
On 12/15/2012 6:53 PM, Iain Buclaw wrote:
> Probably won't be easy (if bug still exists).  To describe it (I'll try to find
> a working example later)

These things all belong in bugzilla. Otherwise, they will never get fixed.

December 16, 2012
On 16 December 2012 03:52, Walter Bright <newshound2@digitalmars.com> wrote:

> On 12/15/2012 6:53 PM, Iain Buclaw wrote:
>
>> Probably won't be easy (if bug still exists).  To describe it (I'll try
>> to find
>> a working example later)
>>
>
> These things all belong in bugzilla. Otherwise, they will never get fixed.
>
>
It likely is in bugzilla, but with thousands of open tickets, things get forgotten and suffer the same 'will never get fixed' rigmarole.


-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


December 16, 2012
On 12/16/2012 12:57 AM, Iain Buclaw wrote:
> It likely is in bugzilla, but with thousands of open tickets, things get
> forgotten and suffer the same 'will never get fixed' rigmarole.

On the other hand, not putting it in bugzilla will *guarantee* it is forgotten and never fixed.

And actually, several people regularly go through bugzilla removing dups, fixing what they can, resolving things that were corrected by other fixes, and drawing attention to others.

Very, very few get marked as "will not fix".

Nobody goes through the newsgroup doing this.

Bugzilla has its problems, but I've not seen a better way to do this.

December 16, 2012
On 16 December 2012 02:53, Iain Buclaw <ibuclaw@ubuntu.com> wrote:

> On 15 December 2012 18:52, Jonathan M Davis <jmdavisProg@gmx.com> wrote:
>
>> On Saturday, December 15, 2012 10:44:56 H. S. Teoh wrote:
>> > Isn't that just some compiler bugs that sometimes cause certain symbols not to be instantiated in the object file? IMO, such bugs should be fixed in the compiler, rather than force the user to compile one way or another.
>>
>> Well obviously. They're bugs. Of course they should be fixed. But as long
>> as
>> they haven't been fixed, we have to work around them, which means
>> compiling
>> everything at once.
>>
>> - Jonathan M Davis
>>
>
>
> Probably won't be easy (if bug still exists).  To describe it (I'll try to find a working example later) - when compiled separately, both modules claim the symbol is extern to their scope.  However when compiled under one compilation unit, the compiler has substantially more information regarding the symbol and sends it to the backend to be written.
>

Respective bugs, all been open for around 3 years.

http://d.puremagic.com/issues/show_bug.cgi?id=3745 http://d.puremagic.com/issues/show_bug.cgi?id=3770


-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


December 16, 2012
On Sunday, 16 December 2012 at 09:22:25 UTC, Iain Buclaw wrote:
> Respective bugs, all been open for around 3 years.
>
> http://d.puremagic.com/issues/show_bug.cgi?id=3745
> http://d.puremagic.com/issues/show_bug.cgi?id=3770

Funny things also happen if you try to be clever by batching modules needing recompilation together (when doing incremental compilation):

http://d.puremagic.com/issues/show_bug.cgi?id=8769

David
« First   ‹ Prev
1 2 3 4 5 6 7 8 9 10 11