Thread overview | ||||||
---|---|---|---|---|---|---|
|
April 29, 2006 [bug?] Strange compiler behaviour | ||||
---|---|---|---|---|
| ||||
I'm working on releasing the shwild library, and getting some problems with DMC++. The following line compiles successfully: dmc -c -wc -wx -Ae -Ar -DWIN32 -DSHWILD_NO_IMPLICIT_LINK -I..\..\include -I"H:\freelibs\openrj\current\include" -I"H:\STLSoft\Releases\current\STLSoft\include" -o.\matches.debug.obj ..\..\src\Matches.cpp However, the following line does not: dmc -c -wc -wx -Ae -Ar -DWIN32 -DSHWILD_NO_IMPLICIT_LINK -I..\..\include -Ih:\freelibs\cstring\current\include -I"H:\freelibs\openrj\current\include" -I"H:\STLSoft\Releases\current\STLSoft\include" -o.\matches.debug.obj ..\..\src\Matches.cpp with the error: Fatal error: unable to open input file 'h:\freelibs\cstring\current\include\cstring' --- errorlevel 1 I'm at a bit of a loss here. Any ideas? Cheers Matthew |
May 01, 2006 Re: [bug?] Strange compiler behaviour | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew | Matthew wrote:
> Fatal error: unable to open input file 'h:\freelibs\cstring\current\include\cstring'
> --- errorlevel 1
>
> I'm at a bit of a loss here. Any ideas?
Does the file exist?
|
May 01, 2006 Re: [bug?] Strange compiler behaviour | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | "Walter Bright" <newshound@digitalmars.com> wrote in message news:e34j2c$1pdu$2@digitaldaemon.com... > Matthew wrote: >> Fatal error: unable to open input file >> 'h:\freelibs\cstring\current\include\cstring' >> --- errorlevel 1 >> >> I'm at a bit of a loss here. Any ideas? > > Does the file exist? I suspect that the problem is related to the fact that 'h:\freelibs\cstring\current\include\cstring' is a directory (within which the cstring.h file resides, i.e. 'h:\freelibs\cstring\current\include\cstring\cstring.h', in response to a #include <cstring/cstring.h>), and DMC++ seeks to read that directory as a file when asked to do so via a #include <cstring> in STLport. I think this is a compiler bug, and the fix is to make sure that when a file-system entry is matched in the include-paths include resolution it is ignored if it is not a file (or a file-link, were it a UNIX concern, which DMC++ of course is not <g>). That sounds reasonable, I'm sure you'd agree, but does it sound feasible? Cheers Matthew |
May 01, 2006 Re: [bug?] Strange compiler behaviour | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew | Matthew wrote:
> "Walter Bright" <newshound@digitalmars.com> wrote in message news:e34j2c$1pdu$2@digitaldaemon.com...
>> Matthew wrote:
>>> Fatal error: unable to open input file 'h:\freelibs\cstring\current\include\cstring'
>>> --- errorlevel 1
>>>
>>> I'm at a bit of a loss here. Any ideas?
>> Does the file exist?
>
> I suspect that the problem is related to the fact that 'h:\freelibs\cstring\current\include\cstring' is a directory (within which the cstring.h file resides, i.e. 'h:\freelibs\cstring\current\include\cstring\cstring.h', in response to a #include <cstring/cstring.h>), and DMC++ seeks to read that directory as a file when asked to do so via a #include <cstring> in STLport.
>
> I think this is a compiler bug, and the fix is to make sure that when a file-system entry is matched in the include-paths include resolution it is ignored if it is not a file (or a file-link, were it a UNIX concern, which DMC++ of course is not <g>).
>
> That sounds reasonable, I'm sure you'd agree, but does it sound feasible?
I'd have to look at the code that implements it, it's over 18 years old <g>.
|
Copyright © 1999-2021 by the D Language Foundation