Why does GCC have different behaviour of compiled code which should do the same?
I observed some unclear behaviour in a C programm compiled with GCC. Could anymone explain why there is a difference in the following code
Why is GCC generating so much code for this std::bit_cast?
I was looking at the code generated when I use std::bit_cast
to convert from arrays of a user-defined strong type to the underlying type and noticed that GCC seems to emit some code even at high optimization levels. For
Error during Gromacs2024.2 installation: srot & strsm
I was trying to install GROMACS following the installation guide from the GROMACS webpage (https://manual.gromacs.org/documentation/2024.2/install-guide/index.html) but after running:
i386-elf-gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory
I have this c code:
‘gcc’ command does not give any output
I have been trying to run a c code from my terminal. The command:
Saving a character to a int variable in c programming using scanf( ) making unexpected char equivalent int value
I was checking library function isupper() to check if the function version or macro version of
isupper() is efficient depending on storage used or runtime and I have this peculiar problem
when using scanf() for storing input character to a int varibale.
Here is my code-
memcpy() behaviour different depending on pointer cast
I’ve been having trouble for hours now while trying to compare 2 seemingly identical structs. I’ve looked into alignment and padding as possible issues but found no issues. When I played around with different combinations of designated initialisation and zero initialisation combined with strcpy()
I found that memcpy()
returned either 1
or 0
. I hope I’ve finally narrowed down the problem into a single C file.
Compile result different in GCC 13.1 and GCC 13.2 constructing a string
I have the following code that compiles fine on GCC 13.2. Colleagues can’t compile it on GCC 13.1. The new version compiles fine even with -Wall -Wextra
. I assume that GCC 13.2 is better and more correct. Which change made this possible? Why is this call not ambiguous when it was considered ambiguous before?
Are LITTLE_ENDIAN, BIG_ENDIAN and BYTE_ORDER macros supposed to be polluting my global namespace with GCC?
I had a class like this:
Weird gcc maybe-unitialized in if
I have a warning I don’t understand in a templated function. How can the value be not initialized if its the if condition?