rdmd & exception def & multiple files

Dmitry Olshansky dmitry.olsh at gmail.com
Thu Aug 30 09:17:04 PDT 2012


On 30-Aug-12 09:40, Charles Hixson wrote:
> On 08/29/2012 06:46 PM, Andrei Alexandrescu wrote:
>> On 8/29/12 4:52 PM, Charles Hixson wrote:
>>> On 08/29/2012 04:15 PM, Andrei Alexandrescu wrote:
>>>> On 8/29/12 3:47 PM, Charles Hixson wrote:
>>>>> Where should I look to better understand
>>>>> rdmd? I expected to need to list all the local files that were needed,
>>>>> but clearly that's the wrong approach.
>>>>
>>>> http://dlang.org/rdmd.html
>>>>
>>>> To my surprise, it's not in the top Google search results. However,
>>>> Dmitry's shadow page is: http://blackwhale.github.com/rdmd.html
>>>>
>>>> Andrei
>>> Thank you. Unfortunately, that page doesn't address the symptoms that
>>> I've been experiencing, which while they don't halt development
>>> certainly confuse it.
>>>
>>> It's starting to look as if while I use rdmd I'll need to keep
>>> everything in one file, as otherwise I can't share exceptions between
>>> classes. (And I'm only guessing that the problem is limited to
>>> exceptions, as I haven't tested with other functions.)
>>>
>>> Since the small test programs DO call successfully between different
>>> files (including for exceptions) I don't really have a clue as to what's
>>> going on, except that it appears to happen during linking. And combining
>>> the routines into one file appears to "fix" the problem. And that dmd
>>> doesn't seem to have the same problem. (I.e., if I add a dummy main
>>> routine to the avl.d file, then
>>> dmd -unittest avl.d utils.d
>>> compiles and executes without problems, even though it doesn't do
>>> anything.
>>
>> You should be able to use rdmd for that dependency pattern, and if not
>> there's a bug in it. However, nobody can work on that without a test
>> case.
>>
>> Andrei
>>
>
> The only one I have is about 450 lines long.  If you want I could send
> it to you.  (I probably shouldn't just post it.)

This is the place to report bugs (including big and obscure ones):
http://d.puremagic.com/issues/

The only requirement is to clear reproducible problem statement like 
this command fails with this on dmd version xx.

As for size, well there is dustmite test case reduction tool that 
sometimes does miracles.

-- 
Olshansky Dmitry


More information about the Digitalmars-d-learn mailing list