[libc-commits] [libc] [libc] Fix hdrgen output for no-argument functions (PR #123245)

via libc-commits libc-commits at lists.llvm.org
Thu Jan 16 14:03:47 PST 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-libc

Author: Roland McGrath (frobtech)

<details>
<summary>Changes</summary>

The hdrgen output is C, not C++.


---
Full diff: https://github.com/llvm/llvm-project/pull/123245.diff


2 Files Affected:

- (modified) libc/utils/hdrgen/function.py (+1-1) 
- (modified) libc/utils/hdrgen/tests/expected_output/test_header.h (+2-2) 


``````````diff
diff --git a/libc/utils/hdrgen/function.py b/libc/utils/hdrgen/function.py
index d97df7f8a50ec5..8ae47e574785fa 100644
--- a/libc/utils/hdrgen/function.py
+++ b/libc/utils/hdrgen/function.py
@@ -22,7 +22,7 @@ def __init__(
 
     def __str__(self):
         attributes_str = " ".join(self.attributes)
-        arguments_str = ", ".join(self.arguments)
+        arguments_str = ", ".join(self.arguments) if self.arguments else "void"
         if attributes_str == "":
             result = f"{self.return_type} {self.name}({arguments_str})"
         else:
diff --git a/libc/utils/hdrgen/tests/expected_output/test_header.h b/libc/utils/hdrgen/tests/expected_output/test_header.h
index a777976134b045..d730078fba0649 100644
--- a/libc/utils/hdrgen/tests/expected_output/test_header.h
+++ b/libc/utils/hdrgen/tests/expected_output/test_header.h
@@ -28,10 +28,10 @@ enum {
 
 __BEGIN_C_DECLS
 
-CONST_FUNC_A void func_a() __NOEXCEPT;
+CONST_FUNC_A void func_a(void) __NOEXCEPT;
 
 #ifdef LIBC_TYPES_HAS_FLOAT128
-float128 func_b() __NOEXCEPT;
+float128 func_b(void) __NOEXCEPT;
 #endif // LIBC_TYPES_HAS_FLOAT128
 
 #ifdef LIBC_TYPES_HAS_FLOAT16

``````````

</details>


https://github.com/llvm/llvm-project/pull/123245


More information about the libc-commits mailing list