A new Clang-based front end

IBM® XL C/C++ for AIX®, V16.1 introduces a new Clang-based front end in addition to the existing IBM legacy XL-based front end. For an explanation of the XL-based front end and the Clang-based front end, see A two-in-one compiler: Clang-based front end and XL-based front end.

You can invoke the Clang-based front end by using the new xlclang and xlclang++ invocation commands.

Compared with the legacy XL-based front end, the new Clang-based front end provides the following capabilities:
  • Enhanced language standard support:

    If your programs conform to a newer language standard, like the C++11 or C++14 language standard, which is not fully supported by the legacy XL-based front end, you might want to compile the programs with the new Clang-based front end.

  • Enhanced GCC compatibilities:

    If you are migrating your programs that were written for and compiled by GCC to IBM XL C/C++ for AIX, you might want to compile the programs with the new Clang-based front end for better compatibility.

Attention: If your programs were written for and compiled by IBM XL C/C++ for AIX earlier than V16.1 and you want to migrate all or part of your programs to xlclang/xlclang++, you must consider the differences between the XL-based front end and the Clang-based front end during migration. For more information, see Migration checklist when moving from xlc/xlc++ to xlclang/xlclang++.

For more information about the differences between the XL-based front end and the Clang-based front end, see the XL C/C++ Migration Guide.