Skip to content

Backport support for gcc-15 into ruby_3_3 branch #13962

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 15 commits into from
Jul 20, 2025

Conversation

nagachika
Copy link
Member

https://bugs.ruby-lang.org/issues/21500
https://bugs.ruby-lang.org/issues/21496

  • Backport RBIMPL_ATTR_NONSTRING() macro to suppress warnings on GCC 15
  • Support LTO in default gems
  • Add compilation jobs with GCC-14,15 in GitHub Actions compilers workflow

nagachika and others added 15 commits July 20, 2025 16:10
… [Backport #21497]

	Suppress gcc 15 unterminated-string-initialization warnings

	Drop an ignored attribute
	MIME-Version: 1.0
	Content-Type: text/plain; charset=UTF-8
	Content-Transfer-Encoding: 8bit

	GCC 13.3.0 (Ubuntu 24.04) emits the following warning:

	../symbol.c: In function ‘rb_id_attrset’:
	../symbol.c:175:9: warning: ‘nonstring’ attribute ignored on objects of type ‘const char[][8]’ [-Wattributes]
	  175 |         RBIMPL_ATTR_NONSTRING() static const char id_types[][8] = {
	      |         ^~~~~~~~~~~~~~~~~~~~~

	Separate `__has_attribute` from `defined(__has_attribute)`

	Fix Visual C warnings:
	```
	regenc.h(121): warning C4067: unexpected tokens following preprocessor directive - expected a newline
	```

	Cast up `int` instruction code to `VALUE`

	Fix Visual C warnings:
	```
	iseq.c(3793): warning C4312: 'type cast': conversion from 'int' to 'void *' of greater size
	iseq.c(3794): warning C4312: 'type cast': conversion from 'int' to 'void *' of greater size
	```

	Do not let files depend on a phony target

	Detect `clock_gettime` and `clock_getres` for winpthreads
(ruby/strscan#158)

- `have_func` includes "ruby.h" by default.
- include "ruby/re.h" where `rb_reg_onig_match` is declared.

ruby/strscan@1ac96f47e9
@matzbot matzbot requested a review from a team July 20, 2025 08:40
@nagachika nagachika changed the base branch from master to ruby_3_3 July 20, 2025 08:41
@nagachika nagachika removed the request for review from a team July 20, 2025 08:41
@nagachika nagachika enabled auto-merge (rebase) July 20, 2025 09:30
@nagachika nagachika disabled auto-merge July 20, 2025 09:31
@nagachika nagachika merged commit 9a269b1 into ruby:ruby_3_3 Jul 20, 2025
3 checks passed
@nagachika nagachika deleted the support-gcc-15 branch July 20, 2025 09:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy