Strange problem with structure

Koroskin Denis 2korden at gmail.com
Mon Jul 21 07:45:45 PDT 2008


On Mon, 21 Jul 2008 18:30:13 +0400, Zarathustra  
<adam.chrapkowski at gmail.com> wrote:

> I have got following part of code:
> [code_code_code_code_code_code_code]
> module basis;
> import std.stdio;
> import std.math;
> import std.string;
> import std.process;
>
> struct SCoordinate{
>   int max;
>   int min;
> }
>
> [code_code_code_code_code_code_code]
> and following errors:
> OPTLINK (R) for Win32  Release 8.00.1
> Copyright (C) Digital Mars 1989-2004  All rights reserved.
> source\hiddenLine.obj(hiddenLine)
>  Error 42: Symbol Undefined _D5basis11SCoordinate3maxMFZl
> source\hiddenLine.obj(hiddenLine)
>  Error 42: Symbol Undefined _D5basis11SCoordinate3minMFZl
>
> It looks like linker treats min and max like external symbols, but why?

Looks like compiler is looking for these functions:
long basis.SCoordinate.min()
long basis.SCoordinate.max()

but can't find their implementation. What code in module "hiddenLine" uses  
min/max and how?

What version of DMD do you use? Could you post the code that makes this  
happen so that we could reproduce it?


More information about the Digitalmars-d-learn mailing list