https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127995
Bug ID: 127995
Summary: [17 Regression] ubsan: load of value 1264848256, which
is not a valid value for type 'bt' in
module.cc:mio_typespec
Product: gcc
Version: 17.0
Status: UNCONFIRMED
Keywords: needs-bisection, openmp
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: pheeck at gcc dot gnu.org
CC: burnus at gcc dot gnu.org
Blocks: 63426
Target Milestone: ---
Host: x86_64-pc-linux-gnu
Target: x86_64-pc-linux-gnu
If I compile the simdlen-scaled-4.f90 testcase from GCC's testsuite with
UBSAN-instrumented trunk GCC, I get an ubsan error:
ubsan-gcc
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/testsuite/gfortran.dg/gomp/simdlen-scaled-4.f90
-S -o simdlen-scaled-4.s -fopenmp
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:2862:28:
runtime error: load of value 1264848256, which is not a valid value for type
'bt'
Here's the backtrace:
#0 0x000000862376 in mio_typespec
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:2862
#1 0x000000ed25b9 in mio_omp_declare_simd_clauses
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:4490
#2 0x000000ed420d in mio_omp_declare_variant
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:4740
#3 0x000000ed64c1 in mio_symbol
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:4988
#4 0x000000ed7751 in load_needed
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:5675
#5 0x000000ed7645 in load_needed
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:5633
#6 0x000000ed7645 in load_needed
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:5633
#7 0x000000edb089 in read_module
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:6343
#8 0x000000edeae7 in gfc_use_module
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:8201
#9 0x000000ee5d0b in gfc_use_modules()
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/module.cc:8325
#10 0x000000f75393 in use_modules
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:163
#11 0x000000f79674 in decode_statement
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:427
#12 0x000000f84dd4 in next_free
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:1718
#13 0x000000f84dd4 in next_statement
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:1951
#14 0x000000f884ed in parse_spec
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:4671
#15 0x000000f91b5f in parse_progunit
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:7249
#16 0x000000f93f01 in gfc_parse_file()
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/parse.cc:7857
#17 0x00000119a24e in gfc_be_parse_file
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/fortran/f95-lang.cc:251
#18 0x0000032f409d in compile_file
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/toplev.cc:455
#19 0x000000c38666 in do_compile
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/toplev.cc:2228
#20 0x000000c38666 in toplev::main(int, char**)
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/toplev.cc:2396
#21 0x000000c3bdbe in main
/home/worker/buildworker/tiber-gcc-ubsan/build/gcc/main.cc:39
#22 0x7f67a602b53d in __libc_start_call_main (/lib64/libc.so.6+0x2b53d)
(BuildId: 3aab14bf4bc4b1750523651c336f5c0622edd1c5)
#23 0x7f67a602b66a in __libc_start_main@GLIBC_2.2.5
(/lib64/libc.so.6+0x2b66a) (BuildId: 3aab14bf4bc4b1750523651c336f5c0622edd1c5)
#24 0x000000c3cb04 in _start ../sysdeps/x86_64/start.S:115
The last commit to modify module.cc:4490 is r17-5077-g8bb7a53a0df5c5, so my
guess is that that's when this started happening.
commit 8bb7a53a0df5c5c6eb41ae689cba5e1a7b814875
Author: Tobias Burnus <[email protected]>
AuthorDate: Mon Oct 12 08:29:37 2026 +0200
Commit: Tobias Burnus <[email protected]>
CommitDate: Mon Oct 12 08:29:37 2026 +0200
OpenMP/Fortran: Handle simdlen's 'scaled' modifier; for > / >= checks,
enforce const check [PR127723]
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63426
[Bug 63426] [meta-bug] Issues found with -fsanitize=undefined