8sa1-gcc/gcc
Greg McGary 4b4f19ec78 c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED.
* c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED.
	* c-lex.c (init_lex): Handle RID_BOUNDED & RID_UNBOUNDED.
	* c-parse.gperf (__bounded, __bounded__, __ptrbase, __ptrbase__,
	__ptrextent, __ptrextent__, __ptrvalue, __ptrvalue__,
	__unbounded, __unbounded__): New keywords.
	* c-parse.in (PTR_VALUE PTR_BASE PTR_EXTENT): New tokens.

From-SVN: r32540
2000-03-14 19:42:11 +00:00
..
ch rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
config configure.in (hppa configurations): Add pa32-regs.h to the list of tm files as appropriate. 2000-03-14 08:47:24 -07:00
cp Jeff Sturm <jsturm@sigma6.com> 2000-03-14 00:11:38 -08:00
f Daily bump. 2000-03-14 01:45:07 -07:00
fixinc remove unused symlinks from generated include dir 2000-03-01 20:43:02 +00:00
ginclude * ginclude/stddef.h: Correct usage of _BSD_RUNE_T_ for FreeBSD. 2000-02-15 21:04:53 +00:00
intl
java parse.y (resolve_package): Set `next' once a type name has been progressively discovered. 2000-03-13 23:51:42 -08:00
objc rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
po Makefile.in (LIBCPP_OBJS): Add cpplex.o. 2000-03-13 22:01:08 +00:00
testsuite * gcc.c-torture/execute/20000314-2.c: New test. 2000-03-14 09:49:03 -07:00
.cvsignore
.gdbinit
ABOUT-GCC-NLS
ABOUT-NLS
acconfig.h Makefile.in (STMP_FIXINC): New toggle. 2000-02-27 00:10:15 +00:00
aclocal.m4
alias.c Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
assert.h
basic-block.h basic-block.h (ALLOCA_REG_SET): Remove. 2000-03-05 22:35:27 +00:00
bitmap.c bitmap.c (bitmap_operation): Avoid using -1 for index since unsigned. 2000-02-18 20:27:00 -05:00
bitmap.h
BUGS
build-make Makefile.in (STMP_FIXINC): New toggle. 2000-02-27 00:10:15 +00:00
builtins.c builtins.c (expand_builtin_strlen): Revert last change. 2000-03-10 16:30:06 -08:00
c-aux-info.c Copyright fixes. 2000-02-25 22:45:17 -07:00
c-common.c c-common.h (make_fname_decl): Declare. 2000-03-08 11:21:28 +00:00
c-common.h c-common.h (make_fname_decl): Declare. 2000-03-08 11:21:28 +00:00
c-convert.c
c-decl.c c-common.h (make_fname_decl): Declare. 2000-03-08 11:21:28 +00:00
c-gperf.h
c-iterate.c Copyright fixes. 2000-02-25 22:45:17 -07:00
c-lang.c Copyright fixes. 2000-02-25 22:45:17 -07:00
c-lex.c c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED. 2000-03-14 19:42:11 +00:00
c-lex.h c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED. 2000-03-14 19:42:11 +00:00
c-parse.c regen 2000-02-28 09:46:46 -05:00
c-parse.gperf c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED. 2000-03-14 19:42:11 +00:00
c-parse.h
c-parse.in c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED. 2000-03-14 19:42:11 +00:00
c-parse.y Fix copyrights. 2000-02-26 06:55:09 -07:00
c-pragma.c tree.h (INT_CST_LT, [...]): Remove unneeded casts. 2000-03-07 06:41:32 -05:00
c-pragma.h
c-tree.h Copyright fixes 2000-02-25 22:54:31 -07:00
c-typeck.c c-typeck.c (c_alignof): Error on incomplete types. 2000-03-14 00:24:21 -08:00
caller-save.c Copyright fixes. 2000-02-25 22:45:17 -07:00
calls.c tree.h (struct tree_common): Rename raises_flag to nothrow_flag. 2000-03-09 15:34:52 -05:00
cccp.1
cccp.c * cccp.c (handle_directive): Initialize backslash_newlines_p. 2000-03-07 23:55:21 -07:00
cexp.c regen 2000-02-28 09:46:46 -05:00
cexp.y Copyright fixes 2000-02-25 22:54:31 -07:00
ChangeLog c-lex.h (enum rid): Add RID_BOUNDED & RID_UNBOUNDED. 2000-03-14 19:42:11 +00:00
ChangeLog.0
ChangeLog.1
ChangeLog.lib
collect2.c Copyright fixes 2000-02-25 22:54:31 -07:00
collect2.h
combine.c Copyright fixes 2000-02-25 22:54:31 -07:00
conditions.h
config.guess
config.in Makefile.in (STMP_FIXINC): New toggle. 2000-02-27 00:10:15 +00:00
configure configure.in (hppa configurations): Add pa32-regs.h to the list of tm files as appropriate. 2000-03-14 08:47:24 -07:00
configure.bat
configure.frag
configure.in configure.in (hppa configurations): Add pa32-regs.h to the list of tm files as appropriate. 2000-03-14 08:47:24 -07:00
configure.lang
convert.c Copyright fixes 2000-02-25 22:54:31 -07:00
convert.h
COPYING
COPYING.LIB
cpp.1 Fix copyrights. 2000-02-25 22:59:31 -07:00
cpp.fns
cpp.texi Fix copyrights. 2000-02-25 22:59:31 -07:00
cpperror.c Makefile.in (LIBCPP_DEPS): New macro. 2000-03-08 23:35:19 +00:00
cppexp.c Makefile.in (LIBCPP_OBJS): Add cpplex.o. 2000-03-13 22:01:08 +00:00
cppfiles.c cppfiles.c (find_include_file): Don't assume nshort is a substring of name. 2000-03-14 17:25:24 +00:00
cpphash.c cpphash.c (dump_hash_helper): Only dump nodes of type T_MACRO. 2000-03-14 06:10:27 +00:00
cpphash.h cppfiles.c: Include mkdeps.h. 2000-03-14 06:34:11 +00:00
cppinit.c Makefile.in (LIBCPP_OBJS): Add cpplex.o. 2000-03-13 22:01:08 +00:00
cpplex.c Makefile.in (LIBCPP_OBJS): Add cpplex.o. 2000-03-13 22:01:08 +00:00
cpplib.c cppfiles.c: Include mkdeps.h. 2000-03-14 06:34:11 +00:00
cpplib.h Makefile.in (LIBCPP_OBJS): Add cpplex.o. 2000-03-13 22:01:08 +00:00
cppmain.c Makefile.in (STMP_FIXINC): New toggle. 2000-02-27 00:10:15 +00:00
cppspec.c
cppulp.c Fix copyrights. 2000-02-25 22:59:31 -07:00
cross-make
crtstuff.c Fix copyrights. 2000-02-25 22:59:31 -07:00
cse.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
cselib.h Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
cstamp-h.in
dbxout.c dbxout.c (dbxout_parms): When correcting for promoted big-endian parameters... 2000-03-08 08:45:17 -05:00
dbxout.h c-decl.c (current_function_decl): Move to toplev.c. 2000-02-29 23:33:50 +00:00
dbxstclass.h
defaults.h Copyright fixes. 2000-02-25 23:04:48 -07:00
diagnostic.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
doprint.c
doschk.c
dostage2
dostage3
dwarf2.h dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant. 2000-02-09 01:57:21 +00:00
dwarf2out.c dwarf2out.c (add_name_and_src_coords_attributes): Only add DW_AT_MIPS_linkage_name for TREE_PUBLIC decls. 2000-03-13 10:09:49 -05:00
dwarf2out.h declare dwarf2out_ignore_block 2000-03-04 19:09:22 -05:00
dwarf.h
dwarfout.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
dwarfout.h
dyn-string.c
dyn-string.h
eh-common.h
emit-rtl.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
enquire.c
errors.c
errors.h
except.c Fix typo last change. 2000-03-10 11:21:06 -08:00
except.h except.c (can_throw): See through a SEQUENCE. 2000-03-09 14:01:47 -05:00
exgettext tinfo.h: Remove apostrophes from C++ comment (xgettext thinks this file is plain C). 2000-02-06 06:57:21 +00:00
explow.c Copyright fixes. 2000-02-25 23:04:48 -07:00
expmed.c Copyright fixes. 2000-02-25 23:04:48 -07:00
expr.c function.c (put_var_into_stack): Use type_for_mode to calculate part_type. 2000-03-13 17:54:03 -05:00
expr.h builtins.c (c_strlen): Use size_diffop and return ssizetype value. 2000-02-27 16:39:40 -05:00
extend.texi c-typeck.c (c_alignof): Error on incomplete types. 2000-03-14 00:24:21 -08:00
final.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
fix-header.c Makefile.in (LIBCPP_DEPS): New macro. 2000-03-08 23:35:19 +00:00
fixproto
flags.h c-common.c (decl_attributes): Set DECL_SIZE_UNIT. 2000-02-19 20:11:00 -05:00
floatlib.c
flow.c Fix typo last change. 2000-03-10 11:21:06 -08:00
fold-const.c tree.h (INT_CST_LT, [...]): Remove unneeded casts. 2000-03-07 06:41:32 -05:00
fp-test.c
frame.c dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant. 2000-02-09 01:57:21 +00:00
frame.h
FSFChangeLog
FSFChangeLog.10
FSFChangeLog.11
function.c function.c (prepare_function_start): Correctly initialize cfun->stack_alignment_needed. 2000-03-14 17:48:48 +00:00
function.h rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
future.options
gansidecl.h
gbl-ctors.h
gcc.1
gcc.c Fix spec string parsing bugs 2000-03-14 18:08:35 +00:00
gcc.h Makefile.in (TREE_H, [...]): Depend on version.h. 2000-02-15 16:36:35 +00:00
gcc.hlp
gcc.texi Fix copyrights. 2000-02-25 23:23:30 -07:00
gccbug.in * gccbug.in: Add web category, gcc specific classes. 2000-03-14 09:50:58 +00:00
gccspec.c
gcov-io.h gcov-io.h (__fetch_long, [...]): Mark as possibly unused. 2000-02-27 09:24:13 -05:00
gcov.c Fix copyrights. 2000-02-25 23:23:30 -07:00
gcov.texi
gcse.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
gen-protos.c Makefile.in (STMP_FIXINC): New toggle. 2000-02-27 00:10:15 +00:00
genattr.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
genattrtab.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
gencheck.c
gencodes.c Fix copyrights. 2000-02-26 06:55:09 -07:00
genconfig.c Fix copyrights. 2000-02-26 06:55:09 -07:00
genemit.c Fix copyrights. 2000-02-26 06:55:09 -07:00
genextract.c Fix copyrights. 2000-02-26 06:55:09 -07:00
genflags.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
gengenrtl.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
genmultilib Makefile.in: Pass a new MULTILIB_EXCLUSIONS option as the sixth argument to genmultilib. 2000-03-06 19:05:52 +01:00
genopinit.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
genoutput.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
genpeep.c Fix copyrights. 2000-02-26 06:55:09 -07:00
genrecog.c Fix copyrights. 2000-02-26 06:55:09 -07:00
ggc-callbacks.c
ggc-common.c c-common.c (decl_attributes): Set DECL_SIZE_UNIT. 2000-02-19 20:11:00 -05:00
ggc-none.c
ggc-page.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
ggc-simple.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
ggc.h rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
glimits.h
global.c basic-block.h (ALLOCA_REG_SET): Remove. 2000-03-05 22:35:27 +00:00
gmon.c
graph.c
graph.h
gstab.h
gsyms.h
gsyslimits.h
gthr-dce.h crtstuff.c (__do_global_ctors_aux, [...]): Add prototype argument. 2000-02-12 19:19:01 +00:00
gthr-posix.h crtstuff.c (__do_global_ctors_aux, [...]): Add prototype argument. 2000-02-12 19:19:01 +00:00
gthr-single.h
gthr-solaris.h crtstuff.c (__do_global_ctors_aux, [...]): Add prototype argument. 2000-02-12 19:19:01 +00:00
gthr-vxworks.h crtstuff.c (__do_global_ctors_aux, [...]): Add prototype argument. 2000-02-12 19:19:01 +00:00
gthr-win32.h crtstuff.c (__do_global_ctors_aux, [...]): Add prototype argument. 2000-02-12 19:19:01 +00:00
gthr.h
haifa-sched.c basic-block.h (ALLOCA_REG_SET): Remove. 2000-03-05 22:35:27 +00:00
halfpic.c
halfpic.h Fix copyrights. 2000-02-26 06:55:09 -07:00
hard-reg-set.h
hash.c
hash.h
hwint.h
input.h input.h (push_srcloc): New function. 2000-02-25 01:07:31 +00:00
install1.texi
INSTALL
install.texi Fix copyrights. 2000-02-26 06:55:09 -07:00
integrate.c integrate.c (copy_decl_for_inlining): Preserve TREE_ADDRESSABLE when copying a PARM_DECL or RESULT_DECL. 2000-02-27 02:43:43 +00:00
integrate.h
intl.c
intl.h
invoke.texi builtins.c (expand_builtin_strlen): Make sure that we have something at the beginning of the sequence. 2000-03-10 14:50:09 -05:00
jump.c jump.c (jump_optimize_1): Don't call delete_barrier_successors if only marking labels. 2000-02-28 07:01:08 -05:00
LANGUAGES
lcm.c lcm.c: Minor reformatting throughout. 2000-02-28 07:21:24 -05:00
libgcc1-test.c
libgcc1.c
libgcc2.c libgcc2.h: New file. 2000-03-09 03:39:09 +00:00
libgcc2.h libgcc2.h: New file. 2000-03-09 03:39:09 +00:00
limitx.h
limity.h
listing
lists.c Fix copyrights. 2000-02-26 06:55:09 -07:00
local-alloc.c Fix copyrights. 2000-02-26 06:55:09 -07:00
longlong.h * longlong.h (__clz_tab): Declare as static to match definition. 2000-02-16 21:40:47 -07:00
loop.c Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
loop.h
machmode.def
machmode.h machmode.h (mode_for_size, [...]): SIZE now signed. 2000-03-04 11:40:05 -05:00
make-l2.com
Makefile.in Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
makefile.vms
mbchar.c
mbchar.h
md.texi * md.texi: Document use of '*' in insn pattern name. 2000-03-03 07:29:42 -05:00
mips-tdump.c
mips-tfile.c Fix copyrights. 2000-02-26 06:55:09 -07:00
mkdeps.c cppfiles.c (file_cleanup, [...]): Replace bcopy(), index() etc calls. 2000-03-11 00:49:44 +00:00
mkdeps.h mkdeps.c, mkdeps.h: New files. 2000-03-04 19:42:04 +00:00
mkinstalldirs
move-if-change
NEWS Add support for MCore port 2000-02-14 22:56:20 +00:00
optabs.c rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00
output.h except.c (can_throw): See through a SEQUENCE. 2000-03-09 14:01:47 -05:00
patch-apollo-includes
pcp.h
predict.c predict.c (estimate_probability): Added the pointer heuristic to the collection of static branch predictors. 2000-02-21 23:04:43 +00:00
prefix.c prefix.c (concat, lookup_key): Use xmalloc and xrealloc consistently. 2000-02-13 12:59:29 -07:00
prefix.h
print-rtl.c real.h (MAX_LONG_DOUBLE_TYPE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE if not defined. 2000-03-06 19:51:52 +01:00
print-tree.c tree.h (struct tree_common): Rename raises_flag to nothrow_flag. 2000-03-09 15:34:52 -05:00
PROBLEMS
profile.c
protoize.c Fix copyrights. 2000-02-26 07:26:24 -07:00
pself1.c
pself2.c
pself3.c
pself4.c
pself5.c
pself.c
README
README-bugs
README-fixinc
README.ACORN
README.ALTOS
README.APOLLO
README.AVR Denis Chertykov <denisc@overta.ru> 2000-02-11 14:31:46 -08:00
README.C4X
README.DWARF
README.FRESCO
README.gnat
README.NS32K
README.RS6000
README.TRAD
README.X11
real.c real.h (MAX_LONG_DOUBLE_TYPE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE if not defined. 2000-03-06 19:51:52 +01:00
real.h real.h (MAX_LONG_DOUBLE_TYPE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE if not defined. 2000-03-06 19:51:52 +01:00
recog.c Fix a bug in preprocess_constraints 2000-03-09 16:07:33 +00:00
recog.h Fix copyrights. 2000-02-26 07:26:24 -07:00
reg-stack.c Fix copyrights. 2000-02-26 07:26:24 -07:00
regclass.c Copyright fixes. 2000-02-25 22:45:17 -07:00
regmove.c regmove.c (combine_stack_adjustments): New. 2000-03-14 06:38:52 -08:00
regs.h Fix copyrights. 2000-02-26 07:26:24 -07:00
reload1.c Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
reload.c Fix copyrights. 2000-02-26 07:26:24 -07:00
reload.h Fix copyrights. 2000-02-26 07:26:24 -07:00
reorg.c Fix copyrights. 2000-02-26 07:26:24 -07:00
resource.c resource.c (mark_referenced_resources): Changed use SET_DEST (...) to XEXP (...... 2000-02-25 22:19:35 -07:00
resource.h
rtl.c real.h (MAX_LONG_DOUBLE_TYPE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE if not defined. 2000-03-06 19:51:52 +01:00
rtl.def Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
rtl.h Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
rtl.texi * rtl.texi: Fix typo. 2000-02-25 18:50:50 -07:00
rtlanal.c Fix copyrights. 2000-02-26 07:26:24 -07:00
sbitmap.c bitmap.c (bitmap_operation): Avoid using -1 for index since unsigned. 2000-02-18 20:27:00 -05:00
sbitmap.h * sbitmap.h: Make SBITMAP_ELT_BITS unsigned. 2000-02-11 02:49:40 -07:00
scan-decls.c Fix copyrights. 2000-02-26 07:26:24 -07:00
scan-types.sh
scan.c Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a. 2000-02-08 21:27:02 +00:00
scan.h cpplib.h: Provide HASHNODE typedef and forward decl of struct hashnode only. 2000-02-10 02:23:08 +00:00
sdbout.c emit-rtl.c (remove_unncessary_notes): Remove notes for empty blocks. 2000-02-28 09:51:42 +00:00
sdbout.h
SERVICE
simplify-rtx.c Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
sort-protos
ssa.c Changes in include: 2000-03-10 08:16:55 +00:00
stab.def
stack.h
stmt.c Fix recently introduced error in expand_end_case. 2000-03-13 19:35:38 +00:00
stor-layout.c * stor-layout.c (finalize_record_size): Fix typo. 2000-03-14 09:36:03 +00:00
sys-protos.h
sys-types.h
system.h Makefile.in (STMP_FIXINC): New toggle. 2000-02-27 00:10:15 +00:00
TESTS.FLUNK
texinfo.tex
tlink.c
tm.texi tm.texi: Document new target switch, NO_BUILTIN_WCHAR_TYPE. 2000-02-28 21:09:54 +00:00
toplev.c regmove.c (combine_stack_adjustments): New. 2000-03-14 06:38:52 -08:00
toplev.h dwarf2out.c (dwarf2out_frame_debug): Add cast to silence warning. 2000-03-03 19:48:46 -05:00
tree.c function.c (put_var_into_stack): Use type_for_mode to calculate part_type. 2000-03-13 17:54:03 -05:00
tree.def function.c (free_temps_for_rtl_expr): Don't free slots that have been pushed into a higher level. 2000-03-06 09:50:17 +00:00
tree.h function.c (put_var_into_stack): Use type_for_mode to calculate part_type. 2000-03-13 17:54:03 -05:00
tsystem.h
typeclass.h
unprotoize.c
unroll.c Fix copyrights. 2000-02-26 07:26:24 -07:00
varasm.c varasm.c (make_decl_rtl): Skip initial '*' when setting DECL_ASSEMBLER_NAME. 2000-03-09 14:54:51 -05:00
varray.c
varray.h Add cselib; use it in loop and reload_cse_regs 2000-03-14 18:36:18 +00:00
version.c Daily bump. 2000-03-14 01:45:07 -07:00
version.h configure (gcc_version): When setting, narrow search to lines containing `version_string'. 2000-02-16 16:22:47 +00:00
vmsconfig.com
xcoffout.c * xcoffout.c (xcoffout_begin_function): Fix typo in previous change. 2000-02-28 21:46:44 +00:00
xcoffout.h rtl.h (rtunion_def): Constify member `rtstr'. 2000-03-07 20:39:10 +00:00

This directory contains the GNU Compiler Collection (GCC) version 2.96.
It includes all of the support for compiling C, C++, Objective C, Fortran,
Java, and Chill.

The GNU Compiler Collection is free software.  See the file COPYING for copying
permission.

See the file gcc.texi (together with other files that it includes) for
installation and porting information.  The file INSTALL contains a
copy of the installation information, as plain ASCII.

Installing this package will create various files in subdirectories of
/usr/local/lib, which are passes used by the compiler and a library
named libgcc.a.  It will also create /usr/local/bin/gcc, which is
the user-level command to do a compilation.

See the Bugs chapter of the GCC Manual for how to report bugs
usefully.  An online readable version of the manual is in the files
gcc.info*.

The files pself.c and pself1.c are not part of GCC.
They are programs that print themselves on standard output.
They were written by Dario Dariol and Giovanni Cozzi, and are
included for your hacking pleasure.  Likewise pself2.c
(Who is the author of that?) and pself3.c (by Vlad Taeerov and Rashit
Fakhreyev).