www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - who to use -allinst

reply Benjamin Thaut <code benjamin-thaut.de> writes:
Could someone please explain the new -allinst compiler flag? Is it 
supposed to be used on static libraries or on the executable using 
templates from those static libraries?

Kind Regards
Benjamin Thaut
Nov 06 2013
parent reply "Dicebot" <public dicebot.lv> writes:
On Wednesday, 6 November 2013 at 19:33:10 UTC, Benjamin Thaut 
wrote:
 Could someone please explain the new -allinst compiler flag? Is 
 it supposed to be used on static libraries or on the executable 
 using templates from those static libraries?

 Kind Regards
 Benjamin Thaut
It is a hack that returns old template instantiation behavior because Walter did not have time to track all failures of new implementation and did not want to revert it. Use it as soon as you encounter weird linker errors unexplainable by anything else.
Nov 06 2013
parent reply Benjamin Thaut <code benjamin-thaut.de> writes:
Am 06.11.2013 20:48, schrieb Dicebot:
 On Wednesday, 6 November 2013 at 19:33:10 UTC, Benjamin Thaut wrote:
 Could someone please explain the new -allinst compiler flag? Is it
 supposed to be used on static libraries or on the executable using
 templates from those static libraries?

 Kind Regards
 Benjamin Thaut
It is a hack that returns old template instantiation behavior because Walter did not have time to track all failures of new implementation and did not want to revert it. Use it as soon as you encounter weird linker errors unexplainable by anything else.
Well I encounter strange linker errors since 2.064. The question is if it is supposed to be used when compiling the executable or when compiling the static library. Kind Regards Benjamin Thaut.
Nov 06 2013
parent reply "Dicebot" <public dicebot.lv> writes:
On Wednesday, 6 November 2013 at 20:02:42 UTC, Benjamin Thaut 
wrote:
 Well I encounter strange linker errors since 2.064. The 
 question is if it is supposed to be used when compiling the 
 executable or when compiling the static library.
You are trying to think about it about a normal feature with intended use cases. It is not. For now I'd recommend to always use it in release builds but remove it time to time and report all linker failures without it to bugzilla - maybe we will manage to implement it properly until 2.065 tl; dr: it is rollback switch for broken feature that was not reverted
Nov 06 2013
parent reply Benjamin Thaut <code benjamin-thaut.de> writes:
Am 06.11.2013 21:14, schrieb Dicebot:
 On Wednesday, 6 November 2013 at 20:02:42 UTC, Benjamin Thaut wrote:
 Well I encounter strange linker errors since 2.064. The question is if
 it is supposed to be used when compiling the executable or when
 compiling the static library.
You are trying to think about it about a normal feature with intended use cases. It is not. For now I'd recommend to always use it in release builds but remove it time to time and report all linker failures without it to bugzilla - maybe we will manage to implement it properly until 2.065 tl; dr: it is rollback switch for broken feature that was not reverted
Ok. I have linker issue with the released 2.064.2 version. Everything worked just fine with git head from about 1 week ago. But I don't have the time right now to dustmite it. I'm also getting tired of it, I submitted so many bugs for 2.064 ... Kind Regards Benjamin Thaut
Nov 06 2013
parent "Dicebot" <public dicebot.lv> writes:
Sorry about that, I have already spent all my rage on this 
decision but with no result. Releasing incomplete features as in 
good old times.
Nov 06 2013