[PATCH] D83761: Fix broken HUGE_VALF macro in llvm-c/DataTypes.h

Raphael Isemann via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 14 04:35:35 PDT 2020


teemperor created this revision.
teemperor added reviewers: rnk, thakis, JDevlieghere.
Herald added a reviewer: deadalnix.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Commit 3a29393b4709d15069130119cf1d136af4a92d77 <https://reviews.llvm.org/rG3a29393b4709d15069130119cf1d136af4a92d77> removes the cmath/math.h includes
from the DataTypes.h header to speed up parsing. However the DataTypes.h header was using
this header to get the macro `HUGE_VAL`  for its own `HUGE_VALF` macro definition. Now
the macro instead just expands into a plain `HUGE_VAL` token which leads to compiler errors
unless `math.h` was previously included by the including source file. It also leads to compiler
warnings with enabled module builds which point out this inconsistency.

The correct way to fix this seems to be to just remove HUGE_VALF from the header. llvm-c
is not referencing that macro from what I can see and users probably should just include
the math headers if they need it (or define it on their own for really old C versions).


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D83761

Files:
  llvm/include/llvm-c/DataTypes.h


Index: llvm/include/llvm-c/DataTypes.h
===================================================================
--- llvm/include/llvm-c/DataTypes.h
+++ llvm/include/llvm-c/DataTypes.h
@@ -77,8 +77,4 @@
 # define UINT64_MAX 0xffffffffffffffffULL
 #endif
 
-#ifndef HUGE_VALF
-#define HUGE_VALF (float)HUGE_VAL
-#endif
-
 #endif /* LLVM_C_DATATYPES_H */


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D83761.277773.patch
Type: text/x-patch
Size: 347 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200714/ae9c1913/attachment.bin>


More information about the llvm-commits mailing list