Segmentation fault with bison 3.8.2 when using --trace=all
김민종 <[email protected]> Wed, 8 Jul 2026 01:33:17 +0900
| Newsgroups | gmane.comp.parsers.bison.bugs |
|---|---|
| Message-ID | <CAMnBzT9VKBKzWpZ6xOiYBzLqfRxAgxsnkb-pW55R0+x0BeW_yg@mail.gmail.com> |
--000000000000682435065607f3f0 Content-Type: text/plain; charset="UTF-8" Hi, I found a segmentation fault while running GNU Bison 3.8.2 on Ubuntu 22.04. The crash occurs when I run Bison with the --trace=all option on the attached grammar file. Environment: OS: Ubuntu 22.04 Bison version: GNU Bison 3.8.2 Build method: downloaded bison-3.8.2.tar.xz and ran ./configure and make Command used: ./bison --trace=all example.yy Expected behavior: Bison should process the grammar file and print trace output without crashing. Actual behavior: Bison crashes with a segmentation fault. Here is the relevant part of the output: $ ./bison --trace=all example.yy bison (GNU Bison) 3.8.2 Starting parse Entering state 0 Stack now 0 Reducing stack by rule 2 (line 319): -> $$ = nterm prologue_declarations (example.yy:[email protected]:1.1@1: ) Entering state 2 Stack now 0 2 Reading a token --(end of buffer or a NUL) --accepting rule at line 219 ("/*") --accepting rule at line 527 (" ") ... Reducing stack by rule 24 (line 363): $1 = token %skeleton (example.yy:[email protected]:20.10@10: ) $2 = token string (example.yy:[email protected]:20.21@21: "lalr1.cc") -> $$ = nterm prologue_declaration (example.yy:[email protected]:20.21@21: ) Entering state 43 Stack now 0 2 43 ... --accepting rule at line 247 ("%define") Next token is token %define (example.yy:[email protected]:24.8@8: ) LAC: initial context established for %define LAC: checking lookahead %define: R55 G60 R8 G43 R3 G2 S16 Reducing stack by rule 55 (line 488): -> $$ = nterm string.opt (example.yy:[email protected]:22.8@8: Segmentation fault (core dumped) I am attaching the example.yy file used to reproduce the crash. Best regards, Minjong Kim --000000000000682435065607f3f0 Content-Type: application/octet-stream; name="example.yy" Content-Disposition: attachment; filename="example.yy" Content-Transfer-Encoding: base64 Content-ID: <f_mravb5u00> X-Attachment-Id: f_mravb5u00 LyogUGFyc2VyIGZvciBjYWxjKysuICAgLSotIEMrKyAtKi0KCiAgIENvcHlyaWdodCAoQykgMjAw NS0yMDE1LCAyMDE4LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCgogICBUaGlz IGZpbGUgaXMgcGFydCBvZiBCaXNvbiwgdGhlIEdOVSBDb21waWxlciBDb21waWxlci4KCiAgIFRo aXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCiAgIChhdCB5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCgogICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhl IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICAgTUVSQ0hBTlRBQklMSVRZ IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQogICBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgoKICAgWW91IHNob3VsZCBoYXZl IHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICAgYWxv bmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9s aWNlbnNlcy8+LiAgKi8KCiVza2VsZXRvbiAibGFscjEuY2MiIC8vIC0qLSBDKysgLSotCiVyZXF1 aXJlICIzLjgiCiVoZWFkZXIKCiVkZWZpbmUgYXBpLnRva2VuLnJhdwoKJWRlZmluZSBhcGkudG9r ZW4uY29uc3RydWN0b3IKJWRlZmluZSBhcGkudmFsdWUudHlwZSB2YXJpYW50CiVkZWZpbmUgcGFy c2UuYXNzZXJ0CgolY29kZSByZXF1aXJlcyB7CiAgIyBpbmNsdWRlIDxzdHJpbmc+CiAgY2xhc3Mg ZHJpdmVyOwp9CgovLyBUaGUgcGFyc2luZyBjb250ZXh0LgolcGFyYW0geyBkcml2ZXImIGRydiB9 CgolbG9jYXRpb25zCgolZGVmaW5lIHBhcnNlLnRyYWNlCiVkZWZpbmUgcGFyc2UuZXJyb3IgZGV0 YWlsZWQKJWRlZmluZSBwYXJzZS5sYWMgZnVsbAoKJWNvZGUgewojIGluY2x1ZGUgImRyaXZlci5o aCIKfQoKJWRlZmluZSBhcGkudG9rZW4ucHJlZml4IHtUT0tffQoldG9rZW4KICBBU1NJR04gICI6 PSIKICBNSU5VUyAgICItIgogIFBMVVMgICAgIisiCiAgU1RBUiAgICAiKiIKICBTTEFTSCAgICIv IgogIExQQVJFTiAgIigiCiAgUlBBUkVOICAiKSIKOwoKJXRva2VuIDxzdGQ6OnN0cmluZz4gSURF TlRJRklFUiAiaWRlbnRpZmllciIKJXRva2VuIDxpbnQ+IE5VTUJFUiAibnVtYmVyIgolbnRlcm0g PGludD4gZXhwCgolcHJpbnRlciB7IHl5byA8PCAkJDsgfSA8Kj47CgolJQolc3RhcnQgdW5pdDsK dW5pdDogYXNzaWdubWVudHMgZXhwICB7IGRydi5yZXN1bHQgPSAkMjsgfTsKCmFzc2lnbm1lbnRz OgogICVlbXB0eSAgICAgICAgICAgICAgICAge30KfCBhc3NpZ25tZW50cyBhc3NpZ25tZW50IHt9 OwoKYXNzaWdubWVudDoKICAiaWRlbnRpZmllciIgIjo9IiBleHAgeyBkcnYudmFyaWFibGVzWyQx XSA9ICQzOyB9OwoKJWxlZnQgIisiICItIjsKJWxlZnQgIioiICIvIjsKZXhwOgogICJudW1iZXIi CnwgImlkZW50aWZpZXIiICB7ICQkID0gZHJ2LnZhcmlhYmxlc1skMV07IH0KfCBleHAgIisiIGV4 cCAgIHsgJCQgPSAkMSArICQzOyB9CnwgZXhwICItIiBleHAgICB7ICQkID0gJDEgLSAkMzsgfQp8 IGV4cCAiKiIgZXhwICAgeyAkJCA9ICQxICogJDM7IH0KfCBleHAgIi8iIGV4cCAgIHsgJCQgPSAk MSAvICQzOyB9CnwgIigiIGV4cCAiKSIgICB7ICQkID0gJDI7IH0KJSUKCnZvaWQKeXk6OnBhcnNl cjo6ZXJyb3IgKGNvbnN0IGxvY2F0aW9uX3R5cGUmIGwsIGNvbnN0IHN0ZDo6c3RyaW5nJiBtKQp7 CiAgc3RkOjpjZXJyIDw8IGwgPDwgIjogIiA8PCBtIDw8ICdcbic7Cn0K --000000000000682435065607f3f0--