[pacman-dev] [PATCH] Use C18 language standard

Eli Schwartz eschwartz at archlinux.org
Tue Mar 31 20:25:20 UTC 2020


On 3/31/20 4:12 PM, Anatol Pomozov wrote:
> C18 is the latest stable specification of the language that is
> supported by modern toolchains.
> It sounds reasonable to me if pacman keeps up with the technology
> stack and uses its advancements.

What advancements are used as a direct result of passing -std=c11? What
generated object code does this patch *on its own*, change?

> Are you saying that C18 requirement introduces limits due to
> requirement of this 2 years old toolchains? Just curious what
> platforms where pacman is used lacks these toolchains?

The limit it introduces is "over-specifying requirements".

> It is not really required to use all the spec features right away. But
> having an option to use it in the future is gonna be useful.
> 
> As of particular use case - if in the future we decide to speed-up the
> installation with more thread-level parallelism (e.g. checking
> signatures/unpacking/... on multiple CPUs) then better C11
> mutlithreadding support is very useful.

If we need it in the future, we can add it in the future. Am I missing
something?

If I add a new pacman feature that relies on libfoo.so, I add a
dependency on libfoo.so -- but does that mean I submit a patch the year
before, to "pass -lfoo when building pacman, to make the libfoo library
an option since it will be useful in the future"? No, I submit a patch
that introduces the use of libfoo functions, and in the same patch, I
add -lfoo to the build flags.

So, it seems reasonable to wait until we want to add c11 features to
pacman, and then submit a patch with the new features, and bump the
minimum-required-language-version argument at the same time.

-- 
Eli Schwartz
Bug Wrangler and Trusted User

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 1601 bytes
Desc: OpenPGP digital signature
URL: <https://lists.archlinux.org/pipermail/pacman-dev/attachments/20200331/7d2a319d/attachment.sig>


More information about the pacman-dev mailing list