================
@@ -16534,7 +16534,7 @@ ExprResult Sema::BuildVAArgExpr(SourceLocation 
BuiltinLoc,
           PromoteType = QualType();
       }
     }
-    if (TInfo->getType()->isSpecificBuiltinType(BuiltinType::Float))
+    if (TInfo->getType()->isFloat16Type() || TInfo->getType()->isFloat32Type())
----------------
uweigand wrote:

Why add this promotion rule?   This seems to directly contradict the 
specification here: https://clang.llvm.org/docs/LanguageExtensions.html

>Because default argument promotion only applies to the standard floating-point 
>types, _Float16 values are not promoted to double when passed as variadic or 
>untyped arguments.


https://github.com/llvm/llvm-project/pull/109164
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to