| Age | Commit message (Collapse) | Author |
|
Non-gcc compilers tend to have this intrinsic these days (e.g. icc).
Better check it regardless of $GCC.
Notes:
Merged: https://github.com/ruby/ruby/pull/3011
|
|
This macro has to be truthy, otherwise the `+0` trick above evalues
RUBY3_HAS_BUILTIN(__builtin_unreachable) to be always false.
Notes:
Merged: https://github.com/ruby/ruby/pull/3011
|
|
Namely icc defines __GNUC__, but doesn't have -Wdeprecated-declarations
Notes:
Merged: https://github.com/ruby/ruby/pull/3011
|
|
[Feature #15921]
Notes:
Merged: https://github.com/ruby/ruby/pull/3012
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3010
|
|
Without this patch, 20k files are opened (openat syscall) because
of duplicate includes. This patch reduced it to 3k and build time
was reduced compile time of range.o from 15sec -> 3sec on my machine.
[Bug #16772]
Notes:
Merged: https://github.com/ruby/ruby/pull/3010
|
|
Only writing the inspected result and a newline is
uninterruptible.
|
|
|
|
|
|
|
|
|
|
compiler"
This reverts commit d2bb2e066b5a914283dd3ea473fc1762183af013.
It didn't work:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20200409T050004Z.log.html.gz#end
```
In file included from ../../.././include/ruby/3/core.h(32),
from ../../.././include/ruby/ruby.h(28),
from ../../.././include/ruby.h(33),
from init.c(1):
../../.././include/ruby/3/core/rtypeddata.h(164): warning #967: conversion from "int" to "const struct rb_data_type_struct *"; sizes do not match
RUBY3_UNREACHABLE_RETURN(0);
```
|
|
rb_uninterruptible() disables any interrupts using handle_interrupt
feature (This function is used by `p`).
After this function, pending interrupts should be checked correctly,
however there is no chance to setup interrupt flag of working
threads, it means that nobody checks pending interrupts.
For example, it ignores terminate signal delivered at the end
of main thread and program can't stop.
This patch set interrupt flag if there are pending interrupts.
|
|
NULL in C++ is esoteric
|
|
|
|
`pw_expire` is declared as `time_t`, but actually not, and
`getpwuid` returns a garbage there.
Also the declaration of `struct passwd` in pwd.h and the manual
page contradict each other, interal `pw_fields` is mentioned only
in the latter. Maybe there is a confusion.
|
|
Coverity Scan says "Using uninitialized value c.fixnum when calling
__builtin_mul_overflow_p."
|
|
b cannot be <= 0 here. Found by Coverity Scan
|
|
It fails to compile ext/-test-/cxxanyargs/cxxanyargs.cpp.
Need work to support it. Contribution is welcome.
|
|
I'm unsure why, but it fails on icc.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20200408T220004Z.log.html.gz
```
In file included from ../../.././include/ruby/3/core.h(32),
from ../../.././include/ruby/ruby.h(28),
from cxxanyargs.cpp(1):
../../.././include/ruby/3/core/rtypeddata.h(163): error: return value type does not match the function type
RUBY3_UNREACHABLE_RETURN(NULL);
```
|
|
|
|
I don't find how to suppress a false positive "unreachable" warning of
the Sun compiler:
```
"./include/ruby/3/core/rtypeddata.h", line 163: warning: statement not
reached
"./include/ruby/3/memory.h", line 256: warning: statement not reached
```
This warnings make mkmf test fail:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-sunc/ruby-master/log/20200408T170004Z.fail.html.gz
```
1) Failure:
TestMkmf::TestConvertible#test_typeof_builtin
[/export/home/users/chkbuild/cb-sunc/tmp/build/20200408T170004Z/ruby/test/mkmf/test_convertible.rb:9]:
convertible_int: checking for convertible type of short...
-------------------- short
--------------------
convertible_int: checking for convertible type of int...
-------------------- int
--------------------
convertible_int: checking for convertible type of long...
-------------------- long
--------------------
convertible_int: checking for convertible type of signed short...
-------------------- failed
...
"cc -I.
-I/export/home/users/chkbuild/cb-sunc/tmp/build/20200408T170004Z/ruby/.ext/include/sparc-solaris2.10
-I/export/home/users/chkbuild/cb-sunc/tmp/build/20200408T170004Z/ruby/include
-I./test -I/opt/csw/include -D_XOPEN_SOURCE=600 -DFFI_NO_RAW_API -g
-c conftest.c"
"/export/home/users/chkbuild/cb-sunc/tmp/build/20200408T170004Z/ruby/include/ruby/3/core/rtypeddata.h",
line 163: warning: statement not reached
"/export/home/users/chkbuild/cb-sunc/tmp/build/20200408T170004Z/ruby/include/ruby/3/memory.h",
line 256: warning: statement not reached
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: typedef signed short rbcv_typedef_;
4:
5: extern rbcv_typedef_ foo();
6: extern short foo();
/* end */
```
|
|
|
|
RUBY3_CAST is a macro to suppress g++/clang++ warnings about C-style
casts. Though Ruby core don't have to bother C++ situations, extension
libraries can benefit from this.
|
|
It turned out that compilation errors in icc were due to their having
broken __has_builtin. Let's just skip such situations.
|
|
https://github.com/ruby/weakref/commit/a67073856e
|
|
|
|
|
|
Trying to fix icc breakage:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20200408T050004Z.fail.html.gz
It seems the macro had problems when a builtin does not exist for the
target compiler. Force evaluete to 0 then, by adding 0 to the
expression.
|
|
|
|
https://github.com/ruby/net-ftp/commit/a56ba121ee
|
|
https://github.com/ruby/net-ftp/commit/bed4bc31db
|
|
|
|
|
|
* prime gem didn't use `version.rb` file.
* Removed development_dependency because they are handled by Gemfile.
|
|
* It couldn't use `English` because `english` is already reserved.
* Bump version to 0.7.0 because versions < 0.7 are reserved.
|
|
Split ruby.h
Notes:
Merged-By: shyouhei <shyouhei@ruby-lang.org>
|
|
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3009
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3009
|
|
|
|
|
|
|
|
Fixed up a58bbd6a512d95ca010d8bebae4fe590400c1413.
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3006
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3006
|