entry))
+ dels--;
+ }
+ }
+ if (elmts || dels)
+ hashtab_chk_error ();
+}
}
/* This function deletes an element with the given COMPARABLE value
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolc
,
+ element);
+
record_expr (element2, NULL, '2');
return retval;
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many p
gcc_checking_assert (vnode);
referenced.add (vnode);
}
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about inj
again, we won't want to duplicate it a second time. */
- if (key != value)
+ if (key != value && value)
id->decl_map->put (value, value);
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist
the recursive call. */
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about <https://stallmansupport.org>
t; n; i++)
{
e = TREE_OPERAND (expr, i);
+ if (!e)
+ continue;
/* SCEV analysis feeds us with a proper expression
graph matching the SSA graph. Avoid turning it
into a tree here, thus handle tree sharing
--
Alexandre Oliva
= NULL;
- slot = expr_table->find_slot_with_hash (tmp_expr, hash, INSERT);
+ slot = expr_table->find_slot_with_hash (tmp_expr, hash, NO_INSERT);
obstack_free (&expr_obstack, tmp_expr);
if (!slot)
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
default_def = ssa_default_def (id->src_cfun, result))
+ {
+ temp = make_ssa_name (temp);
+ insert_decl_map (id, default_def, temp);
+ }
insert_init_stmt (id, entry_bb, gimple_build_assign (temp, var));
}
else
--
Alexandre Oliva, happy hacker
= *slot;
if (n == NULL)
{
- n = ggc_alloc ();
+ *slot = n = ggc_alloc ();
*n = dummy;
}
else
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes
slot can move during evaluation of the body. */
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts.
= new_partition ("");
- pmap.put (NULL, partition);
npartitions++;
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people c
ocus, bool
clear_column,
*locus
= linemap_position_for_line_and_column (line_table, map, line, column);
- if (file_map && file_map[file - 1].Instance)
+ if (decl && file_map && file_map[file - 1].Instance)
decl_to_instance_map->put (decl, file_map[file - 1].Instan
);
if (!existed)
- new (e) Key (k);
+ {
+ new (e) Key (k);
+ // Catch attempts to insert e.g. a NULL pointer.
+ gcc_checking_assert (!Traits::is_empty (*e));
+ }
return existed;
}
--
Alexandre Oliva, happy hackerhttps
else
e->m_value = v;
@@ -203,6 +204,7 @@ public:
{
e->m_key = k;
new ((void *)&e->m_value) Value ();
+ gcc_checking_assert (!Traits::is_empty (*e));
}
if (existed != NULL)
--
Alexandre Oliva, happy hackerhttps://
r not that
> was a valid state or not?
I'm pretty sure the case I hit was a CALL_EXPR.
Thanks for the reviews!
Happy GNU Year!
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformati
gsi == NULL
+ ? NO_INSERT
+ : INSERT);
+ if (!slot || !slot->to)
{
if (gsi == NULL)
return NULL;
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free
8d 100644
--- a/gcc/hash-set.h
+++ b/gcc/hash-set.h
@@ -61,7 +61,8 @@ public:
{
new (e) Key (k);
// Catch attempts to insert e.g. a NULL pointer.
- gcc_checking_assert (!Traits::is_empty (*e));
+ gcc_checking_assert (!Traits::is_empty (*e)
+ &
if (is_deleted (*entry))
+ n_deleted--;
+ else if (hash != Descriptor::hash (*entry)
+ && Descriptor::equal (*entry, comparable))
+ hashtab_chk_error ();
+ }
}
+ if (hash_table_sanitize_eq_limit >= m_size)
+gcc_checking_assert (!n_elements && !n
On Dec 27, 2022, Alexandre Oliva wrote:
> The number of bugs it revealed tells me that leaving callers in charge
> of completing insertions is too error prone. I found this
> verification code a bit too expensive to enable in general.
Here's a relatively cheap, checking-only
presentation.
The one-pending-insertion strategy I implemented was the only one I
could find that addressed all of the pitfalls without significant
overhead. It caught even one case that the mere element-counting had
failed to catch.
--
Alexandre Oliva, happy hackerhttps://FSFLA.
On Dec 29, 2022, Richard Biener wrote:
>> Am 29.12.2022 um 00:06 schrieb Alexandre Oliva :
>>
>> On Dec 28, 2022, Richard Biener wrote:
>>
>>> I wonder if on INSERT, pushing a DELETED marker would fix the dangling
>>> insert and search duri
> Thanks and happy holidays!
Happy GNU Year! :-)
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check t
if (is_deleted (entry))
+ if (is_empty (entry))
+ continue;
+ else if (is_deleted (entry))
mark_deleted (nentries[i]);
- else if (!is_empty (entry))
+ else
new ((void*) (nentries + i)) value_type (entry);
}
m_entries = n
Hello, Richard,
Thank you for the feedback.
On Jan 12, 2023, Richard Biener wrote:
> On Tue, Dec 27, 2022 at 5:12 AM Alexandre Oliva via Gcc-patches
> wrote:
>> This patch extends the memset expansion to start with a loop, so as to
>> still take advantage of known alignm
Hello, Paul,
On Jan 13, 2023, Paul Koning wrote:
>> On Jan 13, 2023, at 8:54 PM, Alexandre Oliva via Gcc-patches
>> wrote:
>> Target-specific code is great for tight optimizations, but the main
>> purpose of this feature is not an optimization. AFAICT it actually
0, 6, 1, 8, 1, 2, 8, 6,
+1, 8, 4, 9, 3, 8, 4, 6, 0, 9, 0, 1, 8, 2, 3);
+ v *= c;
+ w &= c;
+ *r = (U) v + (U) w;
+}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Di
On Jan 16, 2023, Richard Biener wrote:
> On Sat, Jan 14, 2023 at 2:55 AM Alexandre Oliva wrote:
>> Target-specific code is great for tight optimizations, but the main
>> purpose of this feature is not an optimization. AFAICT it actually
>> slows things down in general (du
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/debug/pr97714.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-options "-O -g" } */
+
+void
+function ()
+{
+ if (0)
+{
+#line 0 "whatever"
+}
+}
--
Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/
Free Softwa
On Oct 6, 2022, Alexandre Oliva wrote:
> I'd much rather we could use -fmultiflags, a far more elegant
> arrangement IMHO, so...
> Ping? https://gcc.gnu.org/pipermail/gcc-patches/2022-June/597419.html
>> for gcc/ChangeLog
>> * common.opt (fmultiflags): New.
>
On Apr 14, 2023, Alexandre Oliva wrote:
> On Mar 23, 2023, Alexandre Oliva wrote:
>> This patch introduces infrastructure for targets to add an offset to
>> the label issued after the call_insn to set the call_return_pc
>> attribute. This will be used on rs6000, that som
g-final { scan-tree-dump-times {__asm__[(]"" : "=g" _[0-9]* : "0"
j_[0-9]*[(]D[)][)][;][\n][ ]*_[0-9]* = j_[0-9]*[(]D[)] != 0;[\n] *_[0-9]* =
_[0-9]* == 0} 1 "hardcmp" } } */
+/* { dg-final { scan-tree-dump-times {__asm__[(]"" : "=g" _[0-9]*
ot; "${toosdirnames}"
"${enable_multilib}"`
+ dirout=`${CONFIG_SHELL-/bin/sh} ./tmpmultilib3 "${combo}"
"${todirnames}" "${toosdirnames}" "${enable_multilib}"`
copts="/${copts}/"
- optout=`./tmpmultilib4 "$
,9 +682,11 @@ namespace
ec = errc();
}
return n;
+#if _GLIBCXX_HAVE_USELOCALE
}
else if (errno == ENOMEM)
ec = errc::not_enough_memory;
+#endif
return 0;
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blog
tin_isunordered(w[i], 0)) ? x[i] + w[i] : y[i] - w[i];
}
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very fe
mind, patch withdrawn.
I guess I should look into how to xfail or skip the tests involving
full-precision long doubles on targets that are limited to doubles with
lower precision to convert chars to long doubles. It's a pity to xfail
the whole tests over an expected issue.
Thanks,
--
Alexan
from_chars limited to double-precision" {
aarch64-*-vxworks* } }
+
// { dg-require-effective-target ieee_floats }
// { dg-require-effective-target size32plus }
// { dg-require-cmath "" }
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software
`f'', ``g'', ``W'' or ``m'' are assumed to have a ``no-'' form unless
+this property is used.
@item Negative(@var{othername})
The option will turn off another option @var{othername}, which is
--
Alexandre Oliva, happy hackerhttps:/
to me, thanks!
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
FWIW, I'd approve it if I had the authority to do so :-)
> I'd think we would need to differentiate between num_debug_mems and
> num_mems depending on if setting_insn is non-N
rees = 0;
@@ -8192,6 +8249,7 @@ tree_ssa_iv_optimize (void)
auto_bitmap toremove;
tree_ssa_iv_optimize_init (&data);
+ mark_ssa_undefs ();
/* Optimize the loops starting with the innermost ones. */
for (auto loop : loops_list (cfun, LI_FROM_INNERMOST))
--
Alexandre Oliva,
-Wl,-install_name,@rpath/libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
$(MISCLIB)
- cd $(RTSDIR); `echo "$(GCC_FOR_TARGET)" \
-| sed -e 's,\./xgcc,../../xgcc,' -e 's,-B\./,-B../../,'`
-dynamiclib $(PICFLAG_FOR_TARGET) \
+ cd $(RTS
On May 20, 2022, Alexandre Oliva wrote:
> Regstrapped on x86_64-linux-gnu. Ok to install?
Ping? https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595356.html
> for gcc/ChangeLog
> * common.opt (multiflags): New.
> * doc/invoke.texi: Document it.
>
suitable IV.
>> +int a, b, c[1], d[2], *e = c;
>> +int main() {
>> + int f = 0;
>> + for (; b < 2; b++) {
>> +int g;
>> +if (f)
>> + g++, b = 40;
>> +a = d[b * b];
>> +for (f = 0; f < 3; f++) {
>> + if
On Jun 1, 2022, Richard Biener wrote:
> On Tue, May 31, 2022 at 3:27 PM Alexandre Oliva wrote:
>int i;
>if (flag)
> i = init;
>i++;
> still would (the propagation stops at i++).
Uh, are you sure? That doesn't sound right. I meant for the
pr
On Jun 1, 2022, Alexandre Oliva wrote:
> Now I'm thinking we can go for an even stricter predicate to disable
> the optimization: if a non-PHI use of a maybe-undefined dominates the
> loop, then we can still perform the optimization:
Here it is.
[PR105665] ivopts: check defs of
COPY_FOR_TARGET): New.
> Handle objcopy.
Ok, thanks
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few che
ck
>> + if (dump_file)
> likewise
ditto
> OK with those changes.
Thanks, here's what I'm installing momentarily.
[PR105665] ivopts: check defs of names in base for undefs
From: Alexandre Oliva
The patch for PR 100810 tested for undefined SSA_NAMEs appearing
us --porcelain 2>/dev/null | grep -vq '^ ' ;\
- then revision+=M ;\
+ then revision=$${revision}M ;\
fi ;\
else revision=unknown ;\
fi ;\
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activ
On Jun 1, 2022, Hans-Peter Nilsson wrote:
> On Fri, 20 May 2022, Alexandre Oliva via Gcc-patches wrote:
>>
>> This patch introduces -multiflags, short for multilib TFLAGS, as an
>> option that does nothing by default, but that can be added to TFLAGS
>> and mapped
y for cases in which exec_prefix != prefix, but takes
some work for libdir and includedir to be expanded correctly during
configure. E.g., libdir is normally set to ${exec_prefix}/lib, and
exec_prefix defaults to ${prefix}, but a shell won't expand multiple
layers of macros like make d
dex 8faded348479a..dfba27ed3afa1 100644
--- a/libstdc++-v3/testsuite/23_containers/bitset/to_string/dr396.cc
+++ b/libstdc++-v3/testsuite/23_containers/bitset/to_string/dr396.cc
@@ -26,6 +26,7 @@
void test01()
{
using namespace std;
+ using std::bitset; // Work around struct ::bitset on rtems
"" }
#include
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me ab
100644
--- a/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable_2.cc
+++ b/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable_2.cc
@@ -1,4 +1,5 @@
// { dg-options "-std=c++17 -ffast-math" }
// { dg-do compile }
+// { dg-require-cmath "" }
#include &quo
= ldexpl(testcase, exponent);
+ testcase = ldexp(testcase, exponent);
if (testcase == 0.0L || isinf(testcase))
continue;
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
: we don't have a test for
+ C99_COMPLEX, and these macros may vary depending on -std=*, but
+ macro tests wouldn't take them into account. */
+#if ! (_GLIBCXX_USE_C99_COMPLEX || _GLIBCXX_USE_C99_MATH_TR1)
+ if (true)
+return 0;
+#endif
+
test01();
test02();
test0
{ dg-options "-O3 -save-temps -mcmodel=small" } */
char fixed_regs[0x8000];
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply
atsave_test_out [outest "$b-skip-atsave?" $sing "@/dev/null -o $b.exe
-save-temps" {} {{.args.1}}]
+if { [lindex [lindex $atsave_test_out 0] 0] == "$b.args.1" } {
+ set skip_atsave 1
+}
+}
+
# Driver-chosen outputs.
outest "$b-1 asm default 1&quo
On Jun 21, 2022, Alexandre Oliva wrote:
> * gcc.misc-tests/outputs.exp (outest): Introduce quiet mode,
Use the just-added dry-run infrastructure to clean up files that may
have been left over by interrupted runs of outputs.exp, which used to
lead to spurious non-repeatable (self-fix
mp;workspace, add1bit);
tmp3=__sync_fetch_and_sub (&workspace, add1bit);
@@ -178,6 +182,8 @@ main ()
t, err);
};
+ sched_yield ();
+
#ifdef _WIN32
Sleep (5000);
#else
@@ -187,6 +193,8 @@ main ()
/* Stop please. */
__sync_lock_test_and_set (&doquit, 1ll);
.
+sched_yield ();
}
while (sleeping)
{
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts
-lc" }
+// { dg-additional-options "-fno-rtti -nolibstdc++" }
// { dg-additional-options "-Wl,-undefined,dynamic_lookup" { target
*-*-darwin* } }
// { dg-xfail-if "AIX weak" { powerpc-ibm-aix* } }
--
Alexandre Oliva, happy hackerhttp
;
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about <https://stallmansupport.org>
l, so that, should
+ __gthread_key_delete throw an exception, it won't rely on
+ the key being deleted. */
+ _S_init = false;
+ __gthread_key_delete(_M_key);
+ }
}
__eh_globals_init(const __eh_globals_init&) = delete;
--
Alexandre
On Jun 21, 2022, Jonathan Wakely wrote:
> On Tue, 21 Jun 2022 at 06:54, Alexandre Oliva via Libstdc++
> wrote:
>>
>>
>> As in the gcc testsuite, systems without preemptive multi-threading
>> require sched_yield calls to be placed at points in which a contex
going to have much use
one way or another, aside from this testcase.
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very
On Jun 21, 2022, Richard Sandiford wrote:
> Could we instead have a new target selector for whether the memory
> map includes xGB of RAM?
How about this? Testing on aarch64-rtems6.0. Ok to install?
aarch64: testsuite: symbol-range fallback to compile
From: Alexandre Oliva
On some
}
return $flags
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about <https://stallmansupport.org>
rget system doesn't make sleep a cancellation point...
+ pthread_testcancel();
+}
}
int main()
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many pe
(start + time);
sleeping = false;
});
while (!sleeping)
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very
more times
// than necessary.
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about <https://stallmansupport.org>
= __gnu_test::nonexistent_path();
- auto to = __gnu_test::nonexistent_path();
std::error_code ec;
create_directories(from/"a/b/c");
+ auto to = __gnu_test::nonexistent_path();
{
__gnu_test::scoped_file f(to);
copy(from, to, ec);
--
Alexandre Oliva, happy hacker
__MINGW64__)
+#if defined(__MINGW32__) || defined(__MINGW64__) \
+ || !defined (_GLIBCXX_HAVE_SYMLINK)
// No symlink support
#else
std::error_code ec;
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engin
amp; p, error_code& ec)
// Remove p itself, which is either a non-directory or is now empty.
if (int last = fs::remove(p, ec); !ec)
return count + last;
+ if (count > init_count)
+goto retry;
return -1;
}
--
Alexandre Oliva, happy hacker
VERIFY( is_regular_file(p2) );
+ fs::remove(p1, ec);
fs::remove(p2, ec);
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about inj
fine HAVE_SPACE 0
+#endif
+
namespace fs = std::experimental::filesystem;
bool check(fs::space_info const& s)
@@ -60,6 +67,9 @@ test02()
int
main()
{
+ if (!HAVE_SPACE)
+return 0;
+
test01();
test02();
}
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/b
defined (_GLIBCXX_HAVE_SYS_STAT_H)
+# define HAVE_LWT 1
+#else
+# define HAVE_LWT 0
+#endif
+
using time_type = std::experimental::filesystem::file_time_type;
namespace chrono = std::chrono;
@@ -175,6 +183,9 @@ test02()
int
main()
{
+ if (!HAVE_LWT)
+return 0;
+
test01();
te
ename a directory to an existing directory
+#else
// Can rename a non-empty directory to the name of an empty directory.
ec = bad_ec;
fs::rename(dir/"subdir2", dir/"subdir", ec);
@@ -165,10 +172,12 @@ test_directories()
VERIFY( is_directory(dir/"subdir") );
VE
ff --git a/libstdc++-v3/src/filesystem/dir-common.h
b/libstdc++-v3/src/filesystem/dir-common.h
index 365fd527f4d68..669780ea23fe5 100644
--- a/libstdc++-v3/src/filesystem/dir-common.h
+++ b/libstdc++-v3/src/filesystem/dir-common.h
@@ -199,7 +199,7 @@ struct _Dir_base
#endif
-#ifdef AT_FDCWD
+#
Hello, Sebastian,
On Jun 22, 2022, Sebastian Huber wrote:
> On 22/06/2022 08:24, Alexandre Oliva via Libstdc++ wrote:
>> rtems6's rename() implementation errors with EEXIST when the rename-to
>> filename exists, even when renaming a file to itself or when renaming
>> a
n supported
targets, and decaying it to no if unsupported, with a warning only if it
was yes.
>> with an appropriate ChangeLog?
It's good practice to post the proposed ChangeLog entry along with the
patch, so that it can also be reviewed.
Thanks,
--
Alexandre Oliva, happy hacker
slike for the spelling and change the
patch to use -nostdlib++.
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but ver
On Jun 22, 2022, Sebastian Huber wrote:
> The clock_nanosleep() uses the coarse resolution
Thanks for looking into this. So, is it missing a rounding-up to ensure
the sleep time is >= the requested time, or is it even more elaborate
than that?
--
Alexandre Oliva, happy
On Jun 22, 2022, Sebastian Huber wrote:
> The clock_nanosleep() uses the coarse resolution which may give a time
> before now().
Uhh, sorry, hit send too early.
I also meant to ask whether you'd like me to file an RTEMS ticket about
this issue.
--
Alexandre Oliva, h
mv foo temp
wait
ls -d temp/foo
temp/foo might be removed if you happened to be iterating in temp when
the 'mv' commands run. Is that another kind of race that needs to be
considered? If a dir is moved while we're visiting it, should we stop
visiting it? What about its par
On Jun 22, 2022, Jonathan Wakely wrote:
> On Wed, 22 Jun 2022 at 08:02, Alexandre Oliva via Libstdc++
> wrote:
>>
>> Hello, Sebastian,
>>
>> On Jun 22, 2022, Sebastian Huber wrote:
>>
>> > On 22/06/2022 08:24, Alexandre Oliva via Libstdc++
s in testsuite_fs.h, so I'll shortly post new versions
of those patches for review.
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply abo
per class could demand base paths or CWD in the
!HAVE_OPENAT case, and enable both uses otherwise, offering some
additional type safety that the current abstraction doesn't.
Does that make sense to you?
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blog
case for xfail until it gets fixed in
the kernel, where atomic filesystem operations belong :-(
Would a patch to add:
// { dg-xfail-if "::rename is not POSIX-compliant" { target *-*-rtems* } }
to rename.cc tests be acceptable? I'm afraid I can't go further down
this rabbit
executable
UNRESOLVED: 26_numerics/random/random_device/entropy.cc compilation failed to
produce executable
error: 'log2' is not a member of 'std'; did you mean 'log'?
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software A
ive_target_two_plus_gigs { } {
+return [check_no_compiler_messages two_plus_gigs executable {
+ int dummy[0x8000];
+ int main () { return 0; }
+}]
+}
+
# Return 1 if we're generating 32-bit code using default options, 0
# otherwise.
--
Alexandre Oliva, happy hacker
trace {
set cond "_GLIBCXX_HAVE_STACKTRACE"
- return [v3_check_preprocessor_condition stacktrace $cond]
+ return [v3_check_preprocessor_condition stacktrace $cond ""]
}]
}
@@ -1358,7 +1369,7 @@ proc check_effective_target_stacktrace { } {
proc check_effective_t
@ -47,6 +47,11 @@ namespace test_fs = std::experimental::filesystem;
#define NO_SYMLINKS
#endif
+#if !defined (_GLIBCXX_HAVE_SYS_STATVFS_H) \
+ && !defined (_GLIBCXX_FILESYSTEM_IS_WINDOWS)
+#define NO_SPACE
+#endif
+
namespace __gnu_test
{
#define PATH_CHK(p1, p2, fn) \
--
Alex
TIMENSAT || _GLIBCXX_USE_UTIME))
+#define NO_LAST_WRITE_TIME 1
+#endif
+
namespace __gnu_test
{
#define PATH_CHK(p1, p2, fn) \
--
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about <https://stallmansupport.org>
On Jun 22, 2022, Jonathan Wakely wrote:
> There are other interactions between AT_CDCWD and ::openat not covered
> by this patch. I this this also needs to check HAVE_OPENAT:
Here's an updated version, tested with this additional change.
libstdc++: check for openat
From: Alex
On Jun 23, 2022, Jonathan Wakely wrote:
> On Thu, 23 Jun 2022 at 07:26, Alexandre Oliva wrote:
>> Would a patch to add:
>>
>> // { dg-xfail-if "::rename is not POSIX-compliant" { target *-*-rtems* } }
>>
>> to rename.cc tests be acceptable?
> Yes,
On Jun 23, 2022, Jonathan Wakely wrote:
> On Thu, 23 Jun 2022, 10:02 Sebastian Huber, <
> sebastian.hu...@embedded-brains.de> wrote:
>> On 22/06/2022 07:24, Alexandre Oliva via Gcc-patches wrote:
>> > +} elseif { [istarget *-*-rtems*] } {
>> > + # Add
On Jun 22, 2022, Alexandre Oliva wrote:
> Yeah, I suppose that makes sense, it's beneficial for users to avoid the
> cognitive overload of dealing with equivalent options with different
> spellings. I'll swallow my dislike for the spelling and change the
> patch to use -n
v3/testsuite/30_threads/this_thread/60421.cc
+++ b/libstdc++-v3/testsuite/30_threads/this_thread/60421.cc
@@ -23,6 +23,7 @@
// { dg-require-gthreads "" }
// { dg-require-time "" }
// { dg-require-sleep "" }
+// { dg-xfail-if "nanosleep may wake up too early&q
On Jun 22, 2022, Alexandre Oliva wrote:
> Regstrapped on x86_64-linux-gnu, also tested with a cross to
> aarch64-rtems6. Ok to install?
The early wakeups are fixed for rtems6.1, so the same question raised at
https://gcc.gnu.org/pipermail/gcc-patches/2022-June/597102.html apply to
th
On Jun 22, 2022, Jonathan Wakely wrote:
> On Wed, 22 Jun 2022 at 07:05, Alexandre Oliva via Libstdc++
> wrote:
>> It was prompted by a target system with a non-random implementation of
>> mkstemp, that returns a predictable sequence of filenames and selects
>> the firs
ed __foo__) then using
> NO_SYMLINKS in the dg proc will keep them in sync.
'zactly my thinking.
Here's what I'm testing (same way). Ok to install if it passes?
libstdc++: testsuite: conditionalize symlink tests
From: Alexandre Oliva
Several filesystem tests expect to
1801 - 1900 of 1959 matches
Mail list logo