[PATCH] D85324: [SystemZ][z/OS] Add z/OS Target and define macros

Abhina Sree via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 21 08:45:49 PDT 2020


abhina.sreeskantharajan marked 5 inline comments as done.
abhina.sreeskantharajan added inline comments.


================
Comment at: clang/lib/Basic/Targets/OSTargets.h:743
+    Builder.defineMacro("__BFP__");
+    // FIXME: __BOOL__ should be defined under strict -std=c89.
+    Builder.defineMacro("__BOOL__");
----------------
hubert.reinterpretcast wrote:
> MaskRay wrote:
> > What is strict -std=c89? `!Opts.C99` ?
> The comment has a typo. The macro should //not// be defined with strict C89 modes.
> 
> > What is strict -std=c89? `!Opts.C99` ?
> 
> In the context of this macro, "strict C89" means `!Opts.C99` and the severity of `ext_c99_feature` diagnostics is at least an error. This occurs, for example, with `-std=gnu89 -Werror=c99-extensions`.
> 
Thanks, I've fixed the comment.


================
Comment at: clang/lib/Basic/Targets/OSTargets.h:757
+    if (Opts.C99)
+      Builder.defineMacro("_ISOC99_SOURCE");
+
----------------
MaskRay wrote:
> This is strange. On other systems the user requests it.
Thanks, I've removed this macro to maintain consistency with other platforms.


================
Comment at: clang/lib/Basic/Targets/OSTargets.h:773
+      // type is not declared as a typedef in system headers.
+      Builder.defineMacro("__wchar_t");
+    }
----------------
MaskRay wrote:
> Does it need a value?
No, this macro doesn't require a number. This macro is defined when the wchar_t type is available, so that the system headers do not declare it.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D85324/new/

https://reviews.llvm.org/D85324



More information about the cfe-commits mailing list