|
@@ -1274,7 +1274,7 @@ static void ParseLangArgs(LangOptions &Opts, ArgList &Args, InputKind IK,
|
|
Opts.Blocks = Args.hasArg(OPT_fblocks);
|
|
Opts.Blocks = Args.hasArg(OPT_fblocks);
|
|
Opts.BlocksRuntimeOptional = Args.hasArg(OPT_fblocks_runtime_optional);
|
|
Opts.BlocksRuntimeOptional = Args.hasArg(OPT_fblocks_runtime_optional);
|
|
Opts.Modules = Args.hasArg(OPT_fmodules);
|
|
Opts.Modules = Args.hasArg(OPT_fmodules);
|
|
- Opts.CharIsSigned = !Args.hasArg(OPT_fno_signed_char);
|
|
|
|
|
|
+ Opts.CharIsSigned = Opts.OpenCL || !Args.hasArg(OPT_fno_signed_char);
|
|
Opts.WChar = Opts.CPlusPlus && !Args.hasArg(OPT_fno_wchar);
|
|
Opts.WChar = Opts.CPlusPlus && !Args.hasArg(OPT_fno_wchar);
|
|
Opts.ShortWChar = Args.hasArg(OPT_fshort_wchar);
|
|
Opts.ShortWChar = Args.hasArg(OPT_fshort_wchar);
|
|
Opts.ShortEnums = Args.hasArg(OPT_fshort_enums);
|
|
Opts.ShortEnums = Args.hasArg(OPT_fshort_enums);
|
|
@@ -1285,7 +1285,7 @@ static void ParseLangArgs(LangOptions &Opts, ArgList &Args, InputKind IK,
|
|
Opts.HeinousExtensions = Args.hasArg(OPT_fheinous_gnu_extensions);
|
|
Opts.HeinousExtensions = Args.hasArg(OPT_fheinous_gnu_extensions);
|
|
Opts.AccessControl = !Args.hasArg(OPT_fno_access_control);
|
|
Opts.AccessControl = !Args.hasArg(OPT_fno_access_control);
|
|
Opts.ElideConstructors = !Args.hasArg(OPT_fno_elide_constructors);
|
|
Opts.ElideConstructors = !Args.hasArg(OPT_fno_elide_constructors);
|
|
- Opts.MathErrno = Args.hasArg(OPT_fmath_errno);
|
|
|
|
|
|
+ Opts.MathErrno = !Opts.OpenCL && Args.hasArg(OPT_fmath_errno);
|
|
Opts.InstantiationDepth =
|
|
Opts.InstantiationDepth =
|
|
getLastArgIntValue(Args, OPT_ftemplate_depth, 256, Diags);
|
|
getLastArgIntValue(Args, OPT_ftemplate_depth, 256, Diags);
|
|
Opts.ConstexprCallDepth =
|
|
Opts.ConstexprCallDepth =
|