Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support lists for ObjC and ObjC++ standards #13642

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Commits on Sep 25, 2024

  1. compilers/clang: Move the Mixin for C standards out of the c module

    We'll want to use this for ObjC as well, so we'll make it public and put
    it in a public place.
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    c14263a View commit details
    Browse the repository at this point in the history
  2. compilers/objc: Use shared C standards with clang C compiler

    This means that the two compilers will update together, and that ObjC
    has the list behavior that C does.
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    ddab080 View commit details
    Browse the repository at this point in the history
  3. compilers/clang: split the Std handling for C++ out of the ClangCPPCo…

    …mpiler
    
    We'll want to use this for the ObjC++ compiler too.
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    bc96a57 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b9b94dd View commit details
    Browse the repository at this point in the history
  5. compilers/gnu: Pull C Standard handling out of GnuCCompiler

    So we can re-use it for the ObjC code
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    db54170 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    8eb8b14 View commit details
    Browse the repository at this point in the history
  7. compilers/gnu: Split Gnu C++ standard handling into a mixin class

    So we can re-use it in the ObjC++ standards
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    e9727fc View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    74e1310 View commit details
    Browse the repository at this point in the history
  9. compilers: move Apple C Std version handling to a mixin

    To avoid duplication between C and ObjC
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    37fd1ed View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    54be911 View commit details
    Browse the repository at this point in the history
  11. unit tests: make the test_c_cpp_stds test more robust

    Check clang-cl as well as cl, and clang as well as gcc.
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    8053055 View commit details
    Browse the repository at this point in the history
  12. unit tests: Test ObjC and ObjC++ as well as C and C++

    This tests ObjC and ObjC++ both with and without C enabled. I did this
    because I ran into issues where ObjC only worked when C was enabled, and
    then a later bug where C was disabled, due to the fact that C and ObjC
    both use `c_std` and not `objc_std`.
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    d4bcdc8 View commit details
    Browse the repository at this point in the history
  13. compilers: Check if GCC has support for ObjC and/or ObjC++

    Since this is optional, we should not accept that GCC is a valid ObjC or
    G++ is a valid ObjC++ Compiler unless we've tested that they can
    actually do a basic compile.
    
    This requires fixing a number of tests that have broken assumptions. In
    some cases I've split tests where issues with one language would hide
    the other. It would be great if we had a competent test framework that
    allowed subtests to skip, unfortunately we have python's unittest
    instead. Because of that we can't avoid extra tests by use of subtests.
    dcbaker committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    acb45fe View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    5fdea1e View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2024

  1. wip

    dcbaker committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    bed8bee View commit details
    Browse the repository at this point in the history