bugmake - Bugs: bug #29244, MSVC Compatibility broken with...

 
 

bug #29244: MSVC Compatibility broken with main.c Revision 1.237 (with Proposal for Fix)

Submitted by:  None
Submitted on:  Wed 17 Mar 2010 11:23:45 AM UTC  
 
Severity: 3 - NormalItem Group: Bug
Status: FixedPrivacy: Public
Assigned to: Paul D. Smith <psmith>Open/Closed: Closed
Component Version: 4.0Operating System: MS Windows
Fixed Release: 3.82Triage Status: None

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Thu 01 Jul 2010 07:01:06 AM UTC, comment #4:

Fixed, thanks.

Paul D. Smith <psmith>
Project AdministratorIn charge of this item.
Wed 31 Mar 2010 03:41:14 PM UTC, comment #3:

Hm, define_variable_cname() looks like a macro to me. At least variable.h contians in line 185:

#define define_variable_cname(n,v,o,r) \

That given the code below from main.c resembles a macro exapansion quite closely, doesn't it?

define_variable_cname (".FEATURES",
"target-specific order-only second-expansion else-if"
"shortest-stem undefine"
#ifndef NO_ARCHIVES
"archives"
#endif
#ifdef MAKE_JOBSERVER
"jobserver"
#endif
#ifdef MAKE_SYMLINKS
"check-symlink"
#endif
, o_default, 0);

Oliver Schmidt - oschmidt(at)sap.com

Anonymous
Sun 28 Mar 2010 12:54:28 PM UTC, comment #2:

This is a real bug and I will fix it.

Paul D. Smith <psmith>
Project AdministratorIn charge of this item.
Sun 28 Mar 2010 09:00:25 AM UTC, comment #1:

Paul, can you comment on this? The ChangeLog does not mention this change to main.c, so there's no reason given to this change that I could use for reasoning about this change.

By the way, the issue with MSVC is probably related to string concatenation inside conditional compilation, not as written (there are no macro expansions anywhere in sight, AFAICS).

Eli Zaretskii <eliz>
Project Member
Wed 17 Mar 2010 11:23:45 AM UTC, original submission:

The revision 1.237 of main.c submitted in November 2009 with the comment "Add VMS enhancements from Hartmut Becker." breaks the compatibility with MSVC. The reason is that the MSVC preprocessor doesn't support conditional compilation inside a macro expansion.

To my understanding the change in question is "only" a general optimization not related to VMS so my proposal is to just revert main.c to revision 1.236.

Oliver Schmidt - oschmidt(at)sap.com

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by psmith (Posted a comment)
  • -unavailable- added by eliz (Posted a comment)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 5 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Wed 28 Jul 2010 06:13:13 AM UTCpsmithFixed Release4.0=>3.82
    Thu 01 Jul 2010 07:01:06 AM UTCpsmithStatusNone=>Fixed
      Assigned toNone=>psmith
      Open/ClosedOpen=>Closed
      Fixed ReleaseNone=>4.0

    Back to the top


    Powered by Savane 3.1-cleanup1