# V2532. MISRA. String literal should not be assigned to object unless it has type of pointer to const-qualified char.

This diagnostic rule is based on the software development guidelines developed by MISRA (Motor Industry Software Reliability Association).

The analyzer has detected implicit removal of constness of a string literal. Since any attempt to change a string literal leads to undefined behavior, it should be assigned only to objects of type pointer to const-qualified char.

This rule also applies to wide string literals.

Here is an example of code that will trigger this warning:

    char* Foo(void)
    {
      return "Hello, world!";
    }

A modified string literal also causes the analyzer to issue the warning:

    "first"[1] = 'c';

This diagnostic is classified as:

MISRA-C-2012-7.4 MISRA-C-2023-7.4