<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/55039>55039</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            No expected crash when attempting to modify string constant
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          dmantipov
      </td>
    </tr>
</table>

<pre>
    In the following program:
```
#include <stdio.h>

void f (char *a, char *b) {
  a[0] = 'A';
  b[0] = 'B';
}

int main (int argc, char *argv[]) {
  char a[] = "aaa";
  char *b = "bbb";

  f (a, b);
  printf ("%s %s\n", a, b);
  return 0;
}
```
an attempt to modify string constant `b` should cause crash. But this is not the case for `clang -O3`:
```
$ gcc test.c 
$ ./a.out 
Segmentation fault (core dumped)
$ gcc -O3 test.c 
$ ./a.out 
Segmentation fault (core dumped)
$ clang test.c 
$ ./a.out 
Segmentation fault (core dumped)
$ clang -O3 test.c 
$ ./a.out 
Aaa bbb

```
Version is:
```
$ clang -v
clang version 13.0.0 (Fedora 13.0.0-3.fc35)
Target: x86_64-redhat-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-redhat-linux/11
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-redhat-linux/11
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Selected multilib: .;@m64
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy1VU2P2yAQ_TX2ZRTLgdjJHnzIR1PtpT206rXCgG0qDBHgbPbfd7CTNLvNrnroSjE2zMx7b4aB1FY8V48GQiehsVrbJ2VaODjbOtYndJ3kuyRfJ2V-_k1TQpXhehASErr1QSibdQn9dLaO49EqAQ0kZMU75vC9ZgnZwmVSJ-QBkuVmcgZgSbHJk2KHgPiQJXIsE3o116_Mm1tzstzdMisToGfKRO74zVzLb6lxfkQ4RHulYXRgk-lMRBhD2eRGyTWBi0dd17ceF78x9THlmOoNwMGhqNEaw0jhIQ5JsTXjfAv3gpwMgzOQ38n55dYwAywE2R8CBAu9Fap5Bh9c3FVujQ8MK4LeNT7gOztoAZwNXgJ3zHcZbAaM7JQH_BkbxsbgzMfucDGQa4ZQs680Ur7ZHwtoOYcgfcg4_FnMErJnmUWKae2bbHtpAgvKGmjYoMPYMNZJEEN_kCJW4QUkEv9v2CmjDwH9J7VrxiA20dXhbk1_SOcjs_LvVf1Me5xWptnxHDmnWZ7lUfReCuvYeWFGs4bT4qr-O54PGZAETqvyZ7mYOSk6FmZameE0a81wduucZCJ2mNTR-WC9Ok2mx9hmWkuxUy6aMN_BOxxrZSaPvR1M7DsjlGBBwuftFtQUNdb3ryiyz2LZtMJzscc-wPGOOlydzy-7pSUPUnwA9PYqu8cmUDEQMbN4NBd5Xy7e86Lk7IYfL3W-h_Vqo1NRUfFAH1gaVNCy-mJBng4TzHiK4amT13sgnvw3r4J0cLrqQjiMXUX2sQQqdEOdcdvHqujj5TXDP4VfSIJT5f0gPX4URU4f0q5acLGkMpdFQSkvc4LiSrYggteCFaQQqWa11L6KdyshRj7BCBEvvGKXqorkhOQLQuZlvsyLrGANbZrVYlWWczoXAmsh8UbXWdSRWdemrhol1UPr0aiVD_6PkXmvWiNlNV3lKRtCZ10lekxYHewxHcmrUfxv2BkCDQ">