Revision 078ba4b2a47bee6575497b29c98fbbc4dc7d4dc8 authored by Brad King on 21 July 2021, 14:44:15 UTC, committed by Brad King on 21 July 2021, 15:37:45 UTC
Extend the `SwiftOnly` test to cover the fix in commit 3ddd7f3576
(enable_language: Fix test for working compiler with CMP0126 NEW
behavior, 2021-07-15), as that commit did for the `CSharpOnly` test.

Fixes: #22451
1 parent e98bfa4
Raw File
cmIDEFlagTable.h
/* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
   file Copyright.txt or https://cmake.org/licensing for details.  */
#pragma once

#include <string>

// This is a table mapping XML tag IDE names to command line options
struct cmIDEFlagTable
{
  std::string IDEName;     // name used in the IDE xml file
  std::string commandFlag; // command line flag
  std::string comment;     // comment
  std::string value;       // string value
  unsigned int special;    // flags for special handling requests
  enum
  {
    UserValue = (1 << 0),           // flag contains a user-specified value
    UserIgnored = (1 << 1),         // ignore any user value
    UserRequired = (1 << 2),        // match only when user value is non-empty
    Continue = (1 << 3),            // continue looking for matching entries
    SemicolonAppendable = (1 << 4), // a flag that if specified multiple times
                                    // should have its value appended to the
                                    // old value with semicolons (e.g.
                                    // /NODEFAULTLIB: =>
                                    // IgnoreDefaultLibraryNames)
    UserFollowing = (1 << 5),       // expect value in following argument
    CaseInsensitive = (1 << 6),     // flag may be any case
    SpaceAppendable = (1 << 7),     // a flag that if specified multiple times
                                    // should have its value appended to the
                                    // old value with spaces
    CommaAppendable = (1 << 8),     // a flag that if specified multiple times
                                    // should have its value appended to the
                                    // old value with commas (e.g. C# /nowarn

    UserValueIgnored = UserValue | UserIgnored,
    UserValueRequired = UserValue | UserRequired
  };
};
back to top