| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\ |
|
| |
| |
| |
| |
| | |
Also: improve check for ptr - integer.
(Added by Xavier Leroy <xavier.leroy@college-de-france.fr>)
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Not all pre-processors concatenate string literal lists, however they
are allowed in _Static_assert. This is similar to the rules for inline
assembly etc.
|
| |
| |
| |
| | |
We check that this builtin function is only called from within a variadic
function and has the correct number of arguments.
|
| | |
|
| |
| |
| |
| |
| | |
Added error descriptions for the new syntax errors introduced by
'_Static_assert'.
|
| | |
|
| |
| |
| |
| |
| | |
Returns 1 if the argument is a constant expression, 0 otherwise.
Closes: #366
|
| | |
|
| |
| |
| |
| |
| |
| | |
We check in the initial environment if a function is already defined to
avoid redefinition of functions that are part of the builtin
environment.
|
| | |
|
| |
| |
| |
| |
| | |
The name_of_register and register_of_name function are shared between
all architectures and can be moved in a common file.
|
| |
| |
| |
| |
| |
| |
| | |
The function String.uppercase was deprecated and the replacement
function String.upercase_ascii was only available from OCaml 4.03.0.
Since the minimal OCaml version is now 4.05.0 we can use the function
String.upercase_ascii.
|
| |
| |
| |
| |
| | |
Replace the pattern `try Some (Hashtbl.find ...) with Not_found -> None`
by a call to the function Hashtbl.find_opt.
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \ |
|
| |\| |
|
| | |
| | |
| | | |
In case of redefinition of a typedef name with a different type.
|
| |\ \
| | |/
| |/|
| | | |
gricad-gitlab.univ-grenoble-alpes.fr:sixcy/CompCert into mppa-work
|
| | |
| | |
| | |
| | | |
See ISO C2011 standard, section 6.4.4.4 para 11.
|
|\ \ \ |
|
| |\| |
| | |/
| |/|
| | | |
mppa-work-upstream-merge
|
| | |
| | |
| | |
| | |
| | |
| | | |
"open!" is the form used in the examples in the OCaml manual.
Based on a quick poll it seems to be the preferred form of the OCaml
core dev team.
|
| | |
| | |
| | |
| | | |
Some preprocessors don't remove the vertical tab from the input
so we should be able to handle them in the lexer.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
|/ / |
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, using an unknown builtin function was treated like any
other call to an undeclared function: a warning was emitted, and
an error occurred at link-time.
With this commit, using an unknown builtin function is an error,
like in Clang.
|
|\|
| |
| |
| | |
mppa-work-upstream-merge
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Instead of constructing four different lists for maintaining the
state of the warnings only one list is now used. This list contains
the name of the warning and a boolean indicating whether this option
should be active by default. The rest is computed from this list.
|
|\|
| |
| |
| | |
mppa-work-upstream-merge
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Extend check for incomplete type.
Extended the check to also include a check for variables with
incomplete object type that are not arrays, that have an
initializer. Furthermore the warning includes the type and variable
name.
* Warning for incomplete type in compound literals.
Incomplete types are not allowed for compound literals, except for
array types.
* Extend type printing function.
The type of a typedeof of an anonymous type should not be printed.
Furthermore added '<anonymous>' to the printing of anonymous types.
* Unify incomplete type errors message.
The incomplete type error messages should all look the same including
name of the variable, parameter, etc. and then the incomplete type.
|
| |
| |
| |
| |
| |
| | |
In ISO C, inline functions behaves differently whether they have been declared `extern` at least once or not (i.e. all the declarations have no `extern` and no `static` modifier).
Hence, functions that have been declared / defined `extern` once should remain `extern` when redeclared without `extern`. This gives the ISO C behavior for inline functions and has no impact for non-inline functions.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.gitignore
backend/Lineartyping.v
common/Values.v
configure
cparser/Machine.ml
cparser/Machine.mli
driver/Configuration.ml
driver/Frontend.ml
runtime/Makefile
test/c/Makefile
test/c/aes.c
test/compression/Makefile
test/regression/Makefile
test/regression/extasm.c
test/regression/floats-basics.c
test/regression/floats.c
Note : test/regression should be checked, didn't test it yet
|
| |
| |
| |
| |
| | |
This commit adds a back-end for the AArch64 architecture, namely ARMv8
in 64-bit mode.
|
| | |
|
| | |
|
| | |
|