Print Page | Close Window

FixInsightCL modifies Defines

Printed From: TMS Software
Category: Developer Tools
Forum Name: DEV FixInsight
Forum Discription:
URL: http://www.tmssoftware.com/site/forum/forum_posts.asp?TID=10023
Printed Date: 26 Jan 2020 at 10:42pm


Topic: FixInsightCL modifies Defines
Posted By: Onken L.
Subject: FixInsightCL modifies Defines
Date Posted: 30 May 2018 at 2:26pm
In one of our third party libraries there is a construct of the type

{$IFDEF WIN32}
procedure DoSomething;
begin
end;
{$ELSE}
Error:
This file does not support 16 - bit programs.
{$ENDIF}

This causes a hard compiler error when WIN32 is not defined. For FixInsight this is a fatal parser error. So far so good.

On the FI Command line the parameter is passed as "Win32" not "WIN32". It has to be this way, because otherwise the platform build target fails for the rest of the build script. With FixInsightCL 2016.09 this was not a problem. FixInsightCL 2017.11 fails with a fatal parser error with "Win32", it passes successfully with "WIN32".
So I guess that the 2017.11 version does something to the defines that are passed to it on the command line.



Replies:
Posted By: Roman Yankovsky
Date Posted: 30 May 2018 at 11:12pm
So it seems like in 2017.11 defines are case-sensitive? This shouldn't happen, of course. I'll doublecheck.


Posted By: Onken L.
Date Posted: 08 Jun 2018 at 2:42pm
FYI: It's not a recent bug.
FixInsight 2017.04upd1also throws the same "Fatal Parser exception" depending on the captialization of Win32/WIN32



Print Page | Close Window