aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/libgnat/s-fileio.ads
diff options
context:
space:
mode:
authorAlexandre Oliva <oliva@adacore.com>2025-08-06 16:31:50 -0300
committerAlexandre Oliva <oliva@gnu.org>2025-08-06 16:31:50 -0300
commit01a523943c0a9b297726289d7333a5217b1d4d31 (patch)
tree65e3025c886faac48b321ffcbf131a914026936a /gcc/ada/libgnat/s-fileio.ads
parent88732d9eb88298a2e7a999c83878c8ea9edc5827 (diff)
downloadgcc-master.zip
gcc-master.tar.gz
gcc-master.tar.bz2
[hardbool] implement OP=, ++ and --, volatile and atomicsHEADtrunkmaster
hardbools didn't behave quite like bools when incremented, decremented, or otherwise modified using their previous value, as in += et al. Fix that. Also fix some checking errors that come up when using qualified base types. for gcc/c-family/ChangeLog * c-attribs.cc (handle_hardbool_attribute): Create distinct enumeration types, with structural equality. Handle base type qualifiers. for gcc/c/ChangeLog * c-tree.h (C_BOOLEAN_TYPE_P): Cover hardbools as well. * c-typeck.cc (convert_lvalue_to_rvalue): New overload and wrapper. (build_atomic_assign, build_modify_expr): Use it. (build_asm_expr, handle_omp-array_sections_1): Simplify with it. (build_unary_op): Handle hardbools. for gcc/testsuite/ChangeLog * gcc.dg/torture/hardbool-ai.c: New. * gcc.dg/torture/hardbool-vi.c: New. * gcc.dg/torture/hardbool.c: Handle NO_BITFIELDS. (add1, preinc, postinc, sub1, predec, postdec): New. (main): Exercise them.
Diffstat (limited to 'gcc/ada/libgnat/s-fileio.ads')
0 files changed, 0 insertions, 0 deletions