diff --git a/bootstrap/lib/kernel/ebin/auth.beam b/bootstrap/lib/kernel/ebin/auth.beam index 1df091e405e0..cf9e66c18368 100644 Binary files a/bootstrap/lib/kernel/ebin/auth.beam and b/bootstrap/lib/kernel/ebin/auth.beam differ diff --git a/bootstrap/lib/kernel/ebin/code.beam b/bootstrap/lib/kernel/ebin/code.beam index bd5cb29c7e63..0739d67583a1 100644 Binary files a/bootstrap/lib/kernel/ebin/code.beam and b/bootstrap/lib/kernel/ebin/code.beam differ diff --git a/bootstrap/lib/kernel/ebin/code_server.beam b/bootstrap/lib/kernel/ebin/code_server.beam index 9a492b150fe8..05b16b5b39a8 100644 Binary files a/bootstrap/lib/kernel/ebin/code_server.beam and b/bootstrap/lib/kernel/ebin/code_server.beam differ diff --git a/bootstrap/lib/kernel/ebin/disk_log.beam b/bootstrap/lib/kernel/ebin/disk_log.beam index e5c46b67c72f..19118ffbd81e 100644 Binary files a/bootstrap/lib/kernel/ebin/disk_log.beam and b/bootstrap/lib/kernel/ebin/disk_log.beam differ diff --git a/bootstrap/lib/kernel/ebin/disk_log_1.beam b/bootstrap/lib/kernel/ebin/disk_log_1.beam index 6f0492ca3039..d8d9e2bc1546 100644 Binary files a/bootstrap/lib/kernel/ebin/disk_log_1.beam and b/bootstrap/lib/kernel/ebin/disk_log_1.beam differ diff --git a/bootstrap/lib/kernel/ebin/disk_log_server.beam b/bootstrap/lib/kernel/ebin/disk_log_server.beam index 8b08f75d0216..796786f3e7d8 100644 Binary files a/bootstrap/lib/kernel/ebin/disk_log_server.beam and b/bootstrap/lib/kernel/ebin/disk_log_server.beam differ diff --git a/bootstrap/lib/kernel/ebin/file.beam b/bootstrap/lib/kernel/ebin/file.beam index f69fcbfe7447..207c4f75c746 100644 Binary files a/bootstrap/lib/kernel/ebin/file.beam and b/bootstrap/lib/kernel/ebin/file.beam differ diff --git a/bootstrap/lib/kernel/ebin/file_io_server.beam b/bootstrap/lib/kernel/ebin/file_io_server.beam index 7d9797410e77..6dd4e9faf274 100644 Binary files a/bootstrap/lib/kernel/ebin/file_io_server.beam and b/bootstrap/lib/kernel/ebin/file_io_server.beam differ diff --git a/bootstrap/lib/kernel/ebin/gen_tcp.beam b/bootstrap/lib/kernel/ebin/gen_tcp.beam index fc851f77d95a..5dfdc431819c 100644 Binary files a/bootstrap/lib/kernel/ebin/gen_tcp.beam and b/bootstrap/lib/kernel/ebin/gen_tcp.beam differ diff --git a/bootstrap/lib/kernel/ebin/inet_db.beam b/bootstrap/lib/kernel/ebin/inet_db.beam index d27d44fe3308..6326d8445374 100644 Binary files a/bootstrap/lib/kernel/ebin/inet_db.beam and b/bootstrap/lib/kernel/ebin/inet_db.beam differ diff --git a/bootstrap/lib/kernel/ebin/inet_parse.beam b/bootstrap/lib/kernel/ebin/inet_parse.beam index adf46d68643d..f0f2914eaf70 100644 Binary files a/bootstrap/lib/kernel/ebin/inet_parse.beam and b/bootstrap/lib/kernel/ebin/inet_parse.beam differ diff --git a/bootstrap/lib/kernel/ebin/logger_std_h.beam b/bootstrap/lib/kernel/ebin/logger_std_h.beam index fba4c1d44602..d99713444023 100644 Binary files a/bootstrap/lib/kernel/ebin/logger_std_h.beam and b/bootstrap/lib/kernel/ebin/logger_std_h.beam differ diff --git a/bootstrap/lib/kernel/ebin/os.beam b/bootstrap/lib/kernel/ebin/os.beam index 26544ed06321..45d990d75308 100644 Binary files a/bootstrap/lib/kernel/ebin/os.beam and b/bootstrap/lib/kernel/ebin/os.beam differ diff --git a/bootstrap/lib/kernel/ebin/ram_file.beam b/bootstrap/lib/kernel/ebin/ram_file.beam index fa248762a54c..80ad4cf51082 100644 Binary files a/bootstrap/lib/kernel/ebin/ram_file.beam and b/bootstrap/lib/kernel/ebin/ram_file.beam differ diff --git a/bootstrap/lib/kernel/ebin/raw_file_io_compressed.beam b/bootstrap/lib/kernel/ebin/raw_file_io_compressed.beam index 0b48f612c860..6a63ab4b0072 100644 Binary files a/bootstrap/lib/kernel/ebin/raw_file_io_compressed.beam and b/bootstrap/lib/kernel/ebin/raw_file_io_compressed.beam differ diff --git a/bootstrap/lib/kernel/ebin/raw_file_io_deflate.beam b/bootstrap/lib/kernel/ebin/raw_file_io_deflate.beam index 4792042c45f4..c1201eade3b9 100644 Binary files a/bootstrap/lib/kernel/ebin/raw_file_io_deflate.beam and b/bootstrap/lib/kernel/ebin/raw_file_io_deflate.beam differ diff --git a/bootstrap/lib/kernel/ebin/raw_file_io_delayed.beam b/bootstrap/lib/kernel/ebin/raw_file_io_delayed.beam index 83a630c9259d..d4cad8e64e35 100644 Binary files a/bootstrap/lib/kernel/ebin/raw_file_io_delayed.beam and b/bootstrap/lib/kernel/ebin/raw_file_io_delayed.beam differ diff --git a/bootstrap/lib/kernel/ebin/raw_file_io_inflate.beam b/bootstrap/lib/kernel/ebin/raw_file_io_inflate.beam index 079d75c09516..fa29bc6ef379 100644 Binary files a/bootstrap/lib/kernel/ebin/raw_file_io_inflate.beam and b/bootstrap/lib/kernel/ebin/raw_file_io_inflate.beam differ diff --git a/bootstrap/lib/kernel/ebin/raw_file_io_list.beam b/bootstrap/lib/kernel/ebin/raw_file_io_list.beam index 667db2d48bb7..b3f99417b0b8 100644 Binary files a/bootstrap/lib/kernel/ebin/raw_file_io_list.beam and b/bootstrap/lib/kernel/ebin/raw_file_io_list.beam differ diff --git a/bootstrap/lib/kernel/ebin/socket.beam b/bootstrap/lib/kernel/ebin/socket.beam index 6c977d4cf878..34297af7456c 100644 Binary files a/bootstrap/lib/kernel/ebin/socket.beam and b/bootstrap/lib/kernel/ebin/socket.beam differ diff --git a/bootstrap/lib/kernel/ebin/wrap_log_reader.beam b/bootstrap/lib/kernel/ebin/wrap_log_reader.beam index eaf0e1b008a0..25727ecbc83f 100644 Binary files a/bootstrap/lib/kernel/ebin/wrap_log_reader.beam and b/bootstrap/lib/kernel/ebin/wrap_log_reader.beam differ diff --git a/bootstrap/lib/kernel/include/file.hrl b/bootstrap/lib/kernel/include/file.hrl index f2c2bbed8398..a39a5680c464 100644 --- a/bootstrap/lib/kernel/include/file.hrl +++ b/bootstrap/lib/kernel/include/file.hrl @@ -24,46 +24,8 @@ -define(FILE_HRL_, 1). %%-------------------------------------------------------------------------- --record(file_info, - {size :: non_neg_integer() | 'undefined', % Size of file in bytes. - type :: 'device' | 'directory' | 'other' | 'regular' | 'symlink' - | 'undefined', - access :: 'read' | 'write' | 'read_write' | 'none' | 'undefined', - atime :: file:date_time() | non_neg_integer() | 'undefined', - % The local time the file was last read: - % {{Year, Mon, Day}, {Hour, Min, Sec}}. - % atime, ctime, mtime may also be unix epochs() - mtime :: file:date_time() | non_neg_integer() | 'undefined', - % The local time the file was last written. - ctime :: file:date_time() | non_neg_integer() | 'undefined', - % The interpretation of this time field - % is dependent on operating system. - % On Unix it is the last time the file - % or the inode was changed. On Windows, - % it is the creation time. - mode :: non_neg_integer() | 'undefined', - % File permissions. On Windows, - % the owner permissions will be - % duplicated for group and user. - links :: non_neg_integer() | 'undefined', - % Number of links to the file (1 if the - % filesystem doesn't support links). - major_device :: non_neg_integer() | 'undefined', - % Identifies the file system (Unix), - % or the drive number (A: = 0, B: = 1) - % (Windows). - %% The following are Unix specific. - %% They are set to zero on other operating systems. - minor_device :: non_neg_integer() | 'undefined', - % Only valid for devices. - inode :: non_neg_integer() | 'undefined', % Inode number for file. - uid :: non_neg_integer() | 'undefined', % User id for owner. - gid :: non_neg_integer() | 'undefined'}). % Group id for owner. +-import_record(file, [file_info, file_descriptor]). --record(file_descriptor, - {module :: module(), % Module that handles this kind of file - data :: term()}). % Module dependent data - %%-------------------------------------------------------------------------- -endif. diff --git a/bootstrap/lib/stdlib/ebin/epp.beam b/bootstrap/lib/stdlib/ebin/epp.beam index 171b76ae100a..5e732f7e5369 100644 Binary files a/bootstrap/lib/stdlib/ebin/epp.beam and b/bootstrap/lib/stdlib/ebin/epp.beam differ diff --git a/bootstrap/lib/stdlib/ebin/erl_compile.beam b/bootstrap/lib/stdlib/ebin/erl_compile.beam index b48d8d1af3df..b017903b82b5 100644 Binary files a/bootstrap/lib/stdlib/ebin/erl_compile.beam and b/bootstrap/lib/stdlib/ebin/erl_compile.beam differ diff --git a/bootstrap/lib/stdlib/ebin/erl_tar.beam b/bootstrap/lib/stdlib/ebin/erl_tar.beam index f24585188fed..a555a988e117 100644 Binary files a/bootstrap/lib/stdlib/ebin/erl_tar.beam and b/bootstrap/lib/stdlib/ebin/erl_tar.beam differ diff --git a/bootstrap/lib/stdlib/ebin/file_sorter.beam b/bootstrap/lib/stdlib/ebin/file_sorter.beam index 705c822753df..a97d3ffd5a6b 100644 Binary files a/bootstrap/lib/stdlib/ebin/file_sorter.beam and b/bootstrap/lib/stdlib/ebin/file_sorter.beam differ diff --git a/bootstrap/lib/stdlib/ebin/filelib.beam b/bootstrap/lib/stdlib/ebin/filelib.beam index 2e1bac3e5ba4..6b4f7434c0a1 100644 Binary files a/bootstrap/lib/stdlib/ebin/filelib.beam and b/bootstrap/lib/stdlib/ebin/filelib.beam differ diff --git a/bootstrap/lib/stdlib/ebin/filename.beam b/bootstrap/lib/stdlib/ebin/filename.beam index 08c16ec04953..63d49053130e 100644 Binary files a/bootstrap/lib/stdlib/ebin/filename.beam and b/bootstrap/lib/stdlib/ebin/filename.beam differ diff --git a/bootstrap/lib/stdlib/ebin/shell.beam b/bootstrap/lib/stdlib/ebin/shell.beam index 632319a53047..6bed105309f7 100644 Binary files a/bootstrap/lib/stdlib/ebin/shell.beam and b/bootstrap/lib/stdlib/ebin/shell.beam differ diff --git a/bootstrap/lib/stdlib/ebin/zip.beam b/bootstrap/lib/stdlib/ebin/zip.beam index dc3478481fc4..c15236688f55 100644 Binary files a/bootstrap/lib/stdlib/ebin/zip.beam and b/bootstrap/lib/stdlib/ebin/zip.beam differ diff --git a/erts/preloaded/ebin/erl_prim_loader.beam b/erts/preloaded/ebin/erl_prim_loader.beam index 69efd91394db..092728a39cb7 100644 Binary files a/erts/preloaded/ebin/erl_prim_loader.beam and b/erts/preloaded/ebin/erl_prim_loader.beam differ diff --git a/erts/preloaded/ebin/init.beam b/erts/preloaded/ebin/init.beam index ad0824abd9a0..318eccc94248 100644 Binary files a/erts/preloaded/ebin/init.beam and b/erts/preloaded/ebin/init.beam differ diff --git a/erts/preloaded/ebin/prim_file.beam b/erts/preloaded/ebin/prim_file.beam index 584f90c3b98f..8ee1ce2ea492 100644 Binary files a/erts/preloaded/ebin/prim_file.beam and b/erts/preloaded/ebin/prim_file.beam differ diff --git a/erts/preloaded/ebin/prim_zip.beam b/erts/preloaded/ebin/prim_zip.beam index 417c12bda542..eb69f2b0762a 100644 Binary files a/erts/preloaded/ebin/prim_zip.beam and b/erts/preloaded/ebin/prim_zip.beam differ diff --git a/erts/preloaded/src/Makefile b/erts/preloaded/src/Makefile index abd5122bf24a..d9b59debcda8 100644 --- a/erts/preloaded/src/Makefile +++ b/erts/preloaded/src/Makefile @@ -173,5 +173,8 @@ dialyzer: $(DIA_PLT) ../ebin \ $(DIA_WARNINGS) \ --verbose + +ifneq ($(filter $(APP_TARGET),$(MAKECMDGOALS)),$(APP_TARGET)) DEP_REL_TOP=../../../lib/ include $(ERL_TOP)/make/dep.mk +endif diff --git a/erts/preloaded/src/erl_prim_loader.erl b/erts/preloaded/src/erl_prim_loader.erl index ac6f0e66b5ff..a642f772778e 100644 --- a/erts/preloaded/src/erl_prim_loader.erl +++ b/erts/preloaded/src/erl_prim_loader.erl @@ -96,7 +96,7 @@ The `erl_prim_loader` module interprets the following command-line flags: %% Used by init and the code server -export([get_modules/2, is_basename/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -type host() :: atom(). @@ -305,7 +305,7 @@ record [`file_info`](`t:file:file_info/0`), defined in the Kernel include file function is called: ```erlang --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). ``` For more information about the record see `file:read_file_info/2`. diff --git a/erts/preloaded/src/init.erl b/erts/preloaded/src/init.erl index cb23a84519ce..b8f5567beb6a 100644 --- a/erts/preloaded/src/init.erl +++ b/erts/preloaded/src/init.erl @@ -267,7 +267,7 @@ error objfile_extension/0, archive_extension/0,code_path_choice/0, get_configfd/1, set_configfd/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -doc "Current status of init.". -type internal_status() :: 'starting' | 'started' | 'stopping'. diff --git a/erts/preloaded/src/prim_file.erl b/erts/preloaded/src/prim_file.erl index de6f01860572..83763170e4fe 100644 --- a/erts/preloaded/src/prim_file.erl +++ b/erts/preloaded/src/prim_file.erl @@ -674,12 +674,20 @@ read_handle_info_1(Fd, TimeType) -> #{ handle := FRef } = get_fd_data(Fd), case read_handle_info_nif(FRef) of {error, Reason} -> {error, Reason}; - FileInfo -> {ok, adjust_times(FileInfo, TimeType)} + FileInfo -> + {ok, adjust_times(FileInfo, TimeType)} end catch error:_ -> {error, badarg} end. +adjust_times({file_info, S, T, A, AT, MT, CT, M, L, + MAD, MID, I, U, G}, TimeType) -> + adjust_times(#file_info{size = S, type = T, access = A, + atime = AT, mtime = MT, ctime = CT, + mode = M, links = L, + major_device = MAD, minor_device = MID, inode = I, + uid = U, gid = G}, TimeType); adjust_times(FileInfo, posix) -> FileInfo; adjust_times(FileInfo, TimeType) -> diff --git a/erts/preloaded/src/prim_zip.erl b/erts/preloaded/src/prim_zip.erl index 6f7691c60e6e..8cd0e48be45b 100644 --- a/erts/preloaded/src/prim_zip.erl +++ b/erts/preloaded/src/prim_zip.erl @@ -37,7 +37,7 @@ -export([splitter/3]). %% includes --include_lib("kernel/include/file.hrl"). % #file_info +-include("file.hrl"). % #file_info -include_lib("stdlib/include/zip.hrl"). % #zip_file, #zip_comment -include("zip_internal.hrl"). % #cd_file_header etc diff --git a/lib/asn1/src/Makefile b/lib/asn1/src/Makefile index 058303c8d341..0ddd70f9a51a 100644 --- a/lib/asn1/src/Makefile +++ b/lib/asn1/src/Makefile @@ -103,6 +103,7 @@ EXAMPLES = \ ERL_COMPILE_FLAGS += \ -I$(ERL_TOP)/lib/stdlib \ + -I../../kernel/include \ -Werror +nowarn_deprecated_catch ifeq ($(ERL_DETERMINISTIC),yes) diff --git a/lib/asn1/src/asn1ct.erl b/lib/asn1/src/asn1ct.erl index 1301572e3494..ddf2e2a3c79d 100644 --- a/lib/asn1/src/asn1ct.erl +++ b/lib/asn1/src/asn1ct.erl @@ -72,7 +72,7 @@ ASN.1 data (encoded as `BER` or `PER`). -include("asn1_records.hrl"). -include_lib("stdlib/include/erl_compile.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -ifndef(vsn). -define(vsn,"0.0.1"). diff --git a/lib/common_test/src/ct_cover.erl b/lib/common_test/src/ct_cover.erl index 77379dc37e60..4bdf7bab2adb 100644 --- a/lib/common_test/src/ct_cover.erl +++ b/lib/common_test/src/ct_cover.erl @@ -31,7 +31,7 @@ This module exports help functions for performing code coverage analysis. -include("ct_util.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -doc """ Adds nodes to current cover test. Notice that this only works if cover support diff --git a/lib/common_test/src/ct_logs.erl b/lib/common_test/src/ct_logs.erl index 4dbb970936b5..0212c2091b1e 100644 --- a/lib/common_test/src/ct_logs.erl +++ b/lib/common_test/src/ct_logs.erl @@ -57,7 +57,7 @@ -include("ct.hrl"). -include("ct_event.hrl"). -include("ct_util.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(suitelog_name,"suite.log"). -define(run_summary, "suite.summary"). diff --git a/lib/common_test/src/ct_make.erl b/lib/common_test/src/ct_make.erl index 60fe988a0dc4..5fd15be40e25 100644 --- a/lib/common_test/src/ct_make.erl +++ b/lib/common_test/src/ct_make.erl @@ -34,7 +34,7 @@ -export([all/0,all/1,files/1,files/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(MakeOpts,[noexec,load,netload,noload]). diff --git a/lib/common_test/src/ct_release_test.erl b/lib/common_test/src/ct_release_test.erl index 109a1b514471..9ec78f87a847 100644 --- a/lib/common_test/src/ct_release_test.erl +++ b/lib/common_test/src/ct_release_test.erl @@ -122,7 +122,7 @@ -export([init/1, upgrade/4, cleanup/1, get_app_vsns/2, get_appup/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %%----------------------------------------------------------------- -define(testnode, 'ct_release_test-upgrade'). diff --git a/lib/common_test/src/test_server.erl b/lib/common_test/src/test_server.erl index 8ec234e8fcd5..980e9b64a154 100644 --- a/lib/common_test/src/test_server.erl +++ b/lib/common_test/src/test_server.erl @@ -58,7 +58,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -include("test_server_internal.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). init_target_info() -> diff --git a/lib/common_test/src/test_server_ctrl.erl b/lib/common_test/src/test_server_ctrl.erl index 40612575b9c4..f7a9d484dd58 100644 --- a/lib/common_test/src/test_server_ctrl.erl +++ b/lib/common_test/src/test_server_ctrl.erl @@ -84,7 +84,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -include("test_server_internal.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(suite_ext, "_SUITE"). -define(log_ext, ".log.html"). -define(src_listing_ext, ".src.html"). diff --git a/lib/debugger/src/Makefile b/lib/debugger/src/Makefile index 21d1ea91dd8a..2f36c455fdf5 100644 --- a/lib/debugger/src/Makefile +++ b/lib/debugger/src/Makefile @@ -87,7 +87,7 @@ APPUP_TARGET = $(EBIN)/$(APPUP_FILE) # ---------------------------------------------------- # FLAGS # ---------------------------------------------------- -ERL_COMPILE_FLAGS += -Werror -I $(ERL_TOP)/lib -pa $(ERL_TOP)/lib/wx/ebin +nowarn_deprecated_catch +ERL_COMPILE_FLAGS += -Werror -I $(ERL_TOP)/lib -I../../kernel/include -pa $(ERL_TOP)/lib/wx/ebin +nowarn_deprecated_catch # ---------------------------------------------------- diff --git a/lib/debugger/src/dbg_wx_interpret.erl b/lib/debugger/src/dbg_wx_interpret.erl index 320648f02b8d..549228d94e42 100644 --- a/lib/debugger/src/dbg_wx_interpret.erl +++ b/lib/debugger/src/dbg_wx_interpret.erl @@ -24,7 +24,7 @@ -module(dbg_wx_interpret). -moduledoc false. --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("wx/include/wx.hrl"). %% External exports diff --git a/lib/debugger/src/dbg_wx_mon.erl b/lib/debugger/src/dbg_wx_mon.erl index 943a89b3ebfb..0d4b317395d0 100644 --- a/lib/debugger/src/dbg_wx_mon.erl +++ b/lib/debugger/src/dbg_wx_mon.erl @@ -24,7 +24,7 @@ -module(dbg_wx_mon). -moduledoc false. --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("wx/include/wx.hrl"). %% External exports diff --git a/lib/debugger/src/dbg_wx_settings.erl b/lib/debugger/src/dbg_wx_settings.erl index 5656ce3ab955..b756e090c681 100644 --- a/lib/debugger/src/dbg_wx_settings.erl +++ b/lib/debugger/src/dbg_wx_settings.erl @@ -24,7 +24,7 @@ -module(dbg_wx_settings). -moduledoc false. --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("wx/include/wx.hrl"). %% External exports diff --git a/lib/debugger/src/int.erl b/lib/debugger/src/int.erl index ac4f43debfab..230e09bee861 100644 --- a/lib/debugger/src/int.erl +++ b/lib/debugger/src/int.erl @@ -96,7 +96,7 @@ in the User's Guide for Debugger. %% External export only to be used by error_handler -export([eval/3]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %%==Erlang Interpreter================================================ %% diff --git a/lib/dialyzer/src/Makefile b/lib/dialyzer/src/Makefile index 6d7062a7f88b..6852459f2bda 100644 --- a/lib/dialyzer/src/Makefile +++ b/lib/dialyzer/src/Makefile @@ -96,6 +96,7 @@ APPUP_TARGET= $(EBIN)/$(APPUP_FILE) # FLAGS # ---------------------------------------------------- +ERL_COMPILE_FLAGS += -I../../kernel/include ERL_COMPILE_FLAGS += -Werror ERL_COMPILE_FLAGS += +warn_export_vars +warn_unused_import +warn_missing_spec +warn_obsolete_bool_op diff --git a/lib/dialyzer/src/dialyzer_cl.erl b/lib/dialyzer/src/dialyzer_cl.erl index 839c526076cc..908ce4d2a9b7 100644 --- a/lib/dialyzer/src/dialyzer_cl.erl +++ b/lib/dialyzer/src/dialyzer_cl.erl @@ -38,7 +38,7 @@ start_report_modules_changed_and_analyzed/1]). -include("dialyzer.hrl"). --include_lib("kernel/include/file.hrl"). % needed for #file_info{} +-include("file.hrl"). % needed for #file_info{} -record(cl_state, {backend_pid :: pid() | 'undefined', diff --git a/lib/dialyzer/src/dialyzer_incremental.erl b/lib/dialyzer/src/dialyzer_incremental.erl index 5ad81e44fc2e..013619398946 100644 --- a/lib/dialyzer/src/dialyzer_incremental.erl +++ b/lib/dialyzer/src/dialyzer_incremental.erl @@ -26,7 +26,7 @@ -export([start/1, start_report_modules_analyzed/1, start_report_modules_changed_and_analyzed/1]). -include("dialyzer.hrl"). --include_lib("kernel/include/file.hrl"). % needed for #file_info{} +-include("file.hrl"). % needed for #file_info{} -record(incremental_state, {backend_pid :: pid() | 'undefined', diff --git a/lib/eunit/src/Makefile b/lib/eunit/src/Makefile index e08fad6c0278..5c67d38b8a1f 100644 --- a/lib/eunit/src/Makefile +++ b/lib/eunit/src/Makefile @@ -52,7 +52,7 @@ RELSYSDIR = $(RELEASE_PATH)/lib/eunit-$(VSN) EBIN = ../ebin INCLUDE=../include -ERL_COMPILE_FLAGS += -pa $(EBIN) -pa ../../stdlib/ebin -I$(INCLUDE) \ +ERL_COMPILE_FLAGS += -pa $(EBIN) -pa ../../stdlib/ebin -I../../kernel/include -I$(INCLUDE) \ +warn_deprecated_catch +warn_obsolete_bool_op +warn_unused_import -Werror PARSE_TRANSFORM = eunit_autoexport.erl diff --git a/lib/eunit/src/eunit_data.erl b/lib/eunit/src/eunit_data.erl index e940bf89e4ce..eb4f1312e9f7 100644 --- a/lib/eunit/src/eunit_data.erl +++ b/lib/eunit/src/eunit_data.erl @@ -37,7 +37,7 @@ -include("eunit.hrl"). -include("eunit_internal.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -export([iter_init/3, iter_next/1, iter_prev/1, iter_id/1, enter_context/3, get_module_tests/2]). diff --git a/lib/ftp/src/Makefile b/lib/ftp/src/Makefile index c7500d2ee426..5ebbdf10283d 100644 --- a/lib/ftp/src/Makefile +++ b/lib/ftp/src/Makefile @@ -74,7 +74,7 @@ APPUP_TARGET= $(EBIN)/$(APPUP_FILE) # FLAGS # ---------------------------------------------------- EXTRA_ERLC_FLAGS = +warn_unused_vars +nowarn_deprecated_catch -ERL_COMPILE_FLAGS += -I$(ERL_TOP)/lib/kernel/src \ +ERL_COMPILE_FLAGS += -I../../kernel/include -I$(ERL_TOP)/lib/kernel/src \ -pz $(EBIN) \ -pz $(ERL_TOP)/lib/public_key/ebin \ $(EXTRA_ERLC_FLAGS) -DVSN=\"$(VSN)\" diff --git a/lib/ftp/src/ftp_progress.erl b/lib/ftp/src/ftp_progress.erl index 2207bb7da5ca..585cc684ff4b 100644 --- a/lib/ftp/src/ftp_progress.erl +++ b/lib/ftp/src/ftp_progress.erl @@ -36,7 +36,7 @@ %% Spawn export -export([init/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -record(progress, { file :: string() | 'undefined', diff --git a/lib/kernel/include/file.hrl b/lib/kernel/include/file.hrl index f2c2bbed8398..a39a5680c464 100644 --- a/lib/kernel/include/file.hrl +++ b/lib/kernel/include/file.hrl @@ -24,46 +24,8 @@ -define(FILE_HRL_, 1). %%-------------------------------------------------------------------------- --record(file_info, - {size :: non_neg_integer() | 'undefined', % Size of file in bytes. - type :: 'device' | 'directory' | 'other' | 'regular' | 'symlink' - | 'undefined', - access :: 'read' | 'write' | 'read_write' | 'none' | 'undefined', - atime :: file:date_time() | non_neg_integer() | 'undefined', - % The local time the file was last read: - % {{Year, Mon, Day}, {Hour, Min, Sec}}. - % atime, ctime, mtime may also be unix epochs() - mtime :: file:date_time() | non_neg_integer() | 'undefined', - % The local time the file was last written. - ctime :: file:date_time() | non_neg_integer() | 'undefined', - % The interpretation of this time field - % is dependent on operating system. - % On Unix it is the last time the file - % or the inode was changed. On Windows, - % it is the creation time. - mode :: non_neg_integer() | 'undefined', - % File permissions. On Windows, - % the owner permissions will be - % duplicated for group and user. - links :: non_neg_integer() | 'undefined', - % Number of links to the file (1 if the - % filesystem doesn't support links). - major_device :: non_neg_integer() | 'undefined', - % Identifies the file system (Unix), - % or the drive number (A: = 0, B: = 1) - % (Windows). - %% The following are Unix specific. - %% They are set to zero on other operating systems. - minor_device :: non_neg_integer() | 'undefined', - % Only valid for devices. - inode :: non_neg_integer() | 'undefined', % Inode number for file. - uid :: non_neg_integer() | 'undefined', % User id for owner. - gid :: non_neg_integer() | 'undefined'}). % Group id for owner. +-import_record(file, [file_info, file_descriptor]). --record(file_descriptor, - {module :: module(), % Module that handles this kind of file - data :: term()}). % Module dependent data - %%-------------------------------------------------------------------------- -endif. diff --git a/lib/kernel/src/auth.erl b/lib/kernel/src/auth.erl index a0a81f09a1db..9e128b9f4b89 100644 --- a/lib/kernel/src/auth.erl +++ b/lib/kernel/src/auth.erl @@ -61,7 +61,7 @@ Manual. }). -type state() :: #state{}. --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %%---------------------------------------------------------------------- %% Exported functions diff --git a/lib/kernel/src/code.erl b/lib/kernel/src/code.erl index cd06a6da1196..71fccb5273f9 100644 --- a/lib/kernel/src/code.erl +++ b/lib/kernel/src/code.erl @@ -416,7 +416,7 @@ common reasons. -export_type([load_error_rsn/0, load_ret/0]). -export_type([prepared_code/0]). -export_type([module_status/0]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -export_type([coverage_mode/0]). -type coverage_mode() :: 'none' | 'function' | 'function_counters' | diff --git a/lib/kernel/src/code_server.erl b/lib/kernel/src/code_server.erl index 979c490b7ebc..a9c8d4b95870 100644 --- a/lib/kernel/src/code_server.erl +++ b/lib/kernel/src/code_server.erl @@ -33,7 +33,7 @@ error_msg/2, info_msg/2 ]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("stdlib/include/ms_transform.hrl"). -import(lists, [foreach/2]). diff --git a/lib/kernel/src/file.erl b/lib/kernel/src/file.erl index 37702ce72b88..3b763c5a5894 100644 --- a/lib/kernel/src/file.erl +++ b/lib/kernel/src/file.erl @@ -241,9 +241,50 @@ operating system kernel. -export_type([date_time/0, fd/0, file_info/0, filename/0, filename_all/0, io_device/0, io_server/0, location/0, mode/0, name/0, name_all/0, posix/0]). -%%% Includes and defines --include("file_int.hrl"). +-export_record([file_info, file_descriptor]). +-record #file_info + {size = undefined :: non_neg_integer() | 'undefined', % Size of file in bytes. + type = undefined :: 'device' | 'directory' | 'other' | 'regular' | 'symlink' + | 'undefined', + access = undefined :: 'read' | 'write' | 'read_write' | 'none' | 'undefined', + atime = undefined :: file:date_time() | non_neg_integer() | 'undefined', + % The local time the file was last read: + % {{Year, Mon, Day}, {Hour, Min, Sec}}. + % atime, ctime, mtime may also be unix epochs() + mtime = undefined :: file:date_time() | non_neg_integer() | 'undefined', + % The local time the file was last written. + ctime = undefined :: file:date_time() | non_neg_integer() | 'undefined', + % The interpretation of this time field + % is dependent on operating system. + % On Unix it is the last time the file + % or the inode was changed. On Windows, + % it is the creation time. + mode = undefined :: non_neg_integer() | 'undefined', + % File permissions. On Windows, + % the owner permissions will be + % duplicated for group and user. + links = undefined :: non_neg_integer() | 'undefined', + % Number of links to the file (1 if the + % filesystem doesn't support links). + major_device = undefined :: non_neg_integer() | 'undefined', + % Identifies the file system (Unix), + % or the drive number (A: = 0, B: = 1) + % (Windows). + %% The following are Unix specific. + %% They are set to zero on other operating systems. + minor_device = undefined :: non_neg_integer() | 'undefined', + % Only valid for devices. + inode = undefined :: non_neg_integer() | 'undefined', % Inode number for file. + uid = undefined :: non_neg_integer() | 'undefined', % User id for owner. + gid = undefined :: non_neg_integer() | 'undefined'}. % Group id for owner. + +-record #file_descriptor{ + module = undefined :: module(), % Module that handles this kind of file + data = undefined :: term()}. % Module dependent data + + +%%% Includes and defines -define(FILE_IO_SERVER_TABLE, file_io_servers). -define(FILE_SERVER, file_server_2). % Registered name @@ -671,7 +712,7 @@ otherwise `{error, Reason}`. Include the following directive in the module from which the function is called: ```erlang --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). ``` The time type returned in `atime`, `mtime`, and `ctime` is dependent on the time @@ -921,7 +962,7 @@ include file `file.hrl`. Include the following directive in the module from which the function is called: ```erlang --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). ``` The time type set in `atime`, `mtime`, and `ctime` depends on the time type set diff --git a/lib/kernel/src/inet_db.erl b/lib/kernel/src/inet_db.erl index bd718635f319..7aa72f6dde09 100644 --- a/lib/kernel/src/inet_db.erl +++ b/lib/kernel/src/inet_db.erl @@ -83,7 +83,7 @@ -define(dbg(Fmd, Args), ok). -endif. --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2]). diff --git a/lib/kernel/src/inet_parse.erl b/lib/kernel/src/inet_parse.erl index 557668760ddc..3041721737cc 100644 --- a/lib/kernel/src/inet_parse.erl +++ b/lib/kernel/src/inet_parse.erl @@ -49,7 +49,7 @@ -import(lists, [reverse/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include("inet_int.hrl"). %% -------------------------------------------------------------------------- diff --git a/lib/kernel/src/logger_std_h.erl b/lib/kernel/src/logger_std_h.erl index 647810a66368..c8fe2c2529d4 100644 --- a/lib/kernel/src/logger_std_h.erl +++ b/lib/kernel/src/logger_std_h.erl @@ -176,7 +176,7 @@ startup is found in the `m:logger_disk_log_h` manual. -include("logger_internal.hrl"). -include("logger_h_common.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %% API -export([filesync/1]). diff --git a/lib/mnesia/src/Makefile b/lib/mnesia/src/Makefile index 682a534f9c8f..3fba3802e6ad 100644 --- a/lib/mnesia/src/Makefile +++ b/lib/mnesia/src/Makefile @@ -98,6 +98,7 @@ APPUP_TARGET= $(EBIN)/$(APPUP_FILE) # FLAGS # ---------------------------------------------------- ERL_COMPILE_FLAGS += \ + -I../../kernel/include \ -Werror +warn_obsolete_bool_op +nowarn_deprecated_catch \ +'{parse_transform,sys_pre_attributes}' \ +'{attribute,insert,vsn,"mnesia_$(MNESIA_VSN)"}' diff --git a/lib/mnesia/src/mnesia_backup.erl b/lib/mnesia/src/mnesia_backup.erl index 92de5e1d3ccd..3fe90c7029d4 100644 --- a/lib/mnesia/src/mnesia_backup.erl +++ b/lib/mnesia/src/mnesia_backup.erl @@ -56,7 +56,7 @@ -module(mnesia_backup). -moduledoc false. --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -export([ %% Write access diff --git a/lib/mnesia/src/mnesia_dumper.erl b/lib/mnesia/src/mnesia_dumper.erl index cf8c2eb16311..32880231c936 100644 --- a/lib/mnesia/src/mnesia_dumper.erl +++ b/lib/mnesia/src/mnesia_dumper.erl @@ -53,7 +53,7 @@ -export([regulator_init/1]). -include("mnesia.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -import(mnesia_lib, [fatal/2, dbg_out/2]). diff --git a/lib/mnesia/src/mnesia_lib.erl b/lib/mnesia/src/mnesia_lib.erl index 1c7b0ef29010..8bccff4a2a08 100644 --- a/lib/mnesia/src/mnesia_lib.erl +++ b/lib/mnesia/src/mnesia_lib.erl @@ -28,7 +28,7 @@ -moduledoc false. -include("mnesia.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -export([core_file/0]). diff --git a/lib/mnesia/src/mnesia_schema.erl b/lib/mnesia/src/mnesia_schema.erl index 03f64555b430..6b516e5b94c9 100644 --- a/lib/mnesia/src/mnesia_schema.erl +++ b/lib/mnesia/src/mnesia_schema.erl @@ -129,7 +129,7 @@ do_change_table_copy_type/3]). -include("mnesia.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -import(mnesia_lib, [set/2, del/2, verbose/2, dbg_out/2]). diff --git a/lib/observer/src/Makefile b/lib/observer/src/Makefile index ae8686984658..162b02f5945b 100644 --- a/lib/observer/src/Makefile +++ b/lib/observer/src/Makefile @@ -123,6 +123,7 @@ APPUP_TARGET= $(EBIN)/$(APPUP_FILE) # ---------------------------------------------------- ERL_COMPILE_FLAGS += \ -I../include \ + -I../../kernel/include \ -I ../../et/include \ -I ../../../libraries/et/include \ -I $(ERL_TOP)/lib \ diff --git a/lib/observer/src/cdv_wx.erl b/lib/observer/src/cdv_wx.erl index 820a2bc87fc3..0f3fa253b983 100644 --- a/lib/observer/src/cdv_wx.erl +++ b/lib/observer/src/cdv_wx.erl @@ -31,7 +31,7 @@ %% Includes -include_lib("wx/include/wx.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include("observer_defs.hrl"). diff --git a/lib/observer/src/crashdump_viewer.erl b/lib/observer/src/crashdump_viewer.erl index 9b4eb514db8e..f7d318039c99 100644 --- a/lib/observer/src/crashdump_viewer.erl +++ b/lib/observer/src/crashdump_viewer.erl @@ -104,7 +104,7 @@ For details about how to get started with the Crashdump Viewer, see the -export([debug/1,stop_debug/0]). -include("crashdump_viewer.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("stdlib/include/ms_transform.hrl"). -define(SERVER, crashdump_viewer_server). diff --git a/lib/observer/src/observer_wx.erl b/lib/observer/src/observer_wx.erl index a16620a4e556..e816d229a7d4 100644 --- a/lib/observer/src/observer_wx.erl +++ b/lib/observer/src/observer_wx.erl @@ -33,7 +33,7 @@ %% Includes -include_lib("wx/include/wx.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include("observer_defs.hrl"). diff --git a/lib/observer/src/ttb.erl b/lib/observer/src/ttb.erl index 855f162d8040..4fcf8dba2c08 100644 --- a/lib/observer/src/ttb.erl +++ b/lib/observer/src/ttb.erl @@ -47,7 +47,7 @@ parallel. %% For debugging -export([dump_ti/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(meta_time,5000). -define(fetch_time, 10000). -define(history_table,ttb_history_table). diff --git a/lib/public_key/src/Makefile b/lib/public_key/src/Makefile index 1eacd30b18e2..1c8013f0f76f 100644 --- a/lib/public_key/src/Makefile +++ b/lib/public_key/src/Makefile @@ -80,7 +80,7 @@ PUB_KEY_FLAGS = # ---------------------------------------------------- # FLAGS # ---------------------------------------------------- -PUB_KEY_ERL_FLAGS += -I $(INCLUDE) -I ../asn1/ +PUB_KEY_ERL_FLAGS += -I $(INCLUDE) -I ../asn1/ -I../../kernel/include ERL_COMPILE_FLAGS += $(PUB_KEY_ERL_FLAGS) +warn_obsolete_bool_op \ $(PUB_KEY_FLAGS) \ diff --git a/lib/public_key/src/pubkey_os_cacerts.erl b/lib/public_key/src/pubkey_os_cacerts.erl index e0b15810d9a5..9abb117e107d 100644 --- a/lib/public_key/src/pubkey_os_cacerts.erl +++ b/lib/public_key/src/pubkey_os_cacerts.erl @@ -26,7 +26,7 @@ -moduledoc false. -include("public_key.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("kernel/include/logger.hrl"). -export([load/0, load/1, get/0, clear/0, format_error/2]). diff --git a/lib/reltool/src/Makefile b/lib/reltool/src/Makefile index be8181031d42..7cf0ff09561c 100644 --- a/lib/reltool/src/Makefile +++ b/lib/reltool/src/Makefile @@ -62,7 +62,8 @@ APPUP_TARGET = $(EBIN)/$(APPUP_FILE) ERL_COMPILE_FLAGS += +'{parse_transform,sys_pre_attributes}' \ +'{attribute,insert,app_vsn,$(APP_VSN)}' \ -Werror +nowarn_deprecated_catch \ - -I $(ERL_TOP)/lib + -I $(ERL_TOP)/lib \ + -I../../kernel/include # ---------------------------------------------------- # Targets diff --git a/lib/reltool/src/reltool_target.erl b/lib/reltool/src/reltool_target.erl index 5ffe11724e21..3f96d8811639 100644 --- a/lib/reltool/src/reltool_target.erl +++ b/lib/reltool/src/reltool_target.erl @@ -37,7 +37,7 @@ ]). -include("reltool.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Hardcoded internals about the kernel application diff --git a/lib/reltool/src/reltool_utils.erl b/lib/reltool/src/reltool_utils.erl index 210abf91f945..62b1233fd6d8 100644 --- a/lib/reltool/src/reltool_utils.erl +++ b/lib/reltool/src/reltool_utils.erl @@ -53,7 +53,7 @@ %% For testing -export([erl_libs/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("wx/include/wx.hrl"). -include("reltool.hrl"). diff --git a/lib/sasl/src/Makefile b/lib/sasl/src/Makefile index 22262f8860e4..ae6234fbcae6 100644 --- a/lib/sasl/src/Makefile +++ b/lib/sasl/src/Makefile @@ -64,7 +64,7 @@ TARGET_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR)) $(APP_TARGET) $(APPUP_TARGET) # FLAGS # ---------------------------------------------------- -ERL_COMPILE_FLAGS += -I../../stdlib/include -Werror +nowarn_deprecated_catch +ERL_COMPILE_FLAGS += -I../../stdlib/include -I../../kernel/include -Werror +nowarn_deprecated_catch # ---------------------------------------------------- diff --git a/lib/sasl/src/release_handler.erl b/lib/sasl/src/release_handler.erl index f64f07f2a79d..cb53d901f74d 100644 --- a/lib/sasl/src/release_handler.erl +++ b/lib/sasl/src/release_handler.erl @@ -219,7 +219,7 @@ release_handler does. """. -behaviour(gen_server). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %% External exports -export([start_link/0, diff --git a/lib/sasl/src/systools_lib.erl b/lib/sasl/src/systools_lib.erl index 10c369a0fe70..c798e5fec8a6 100644 --- a/lib/sasl/src/systools_lib.erl +++ b/lib/sasl/src/systools_lib.erl @@ -30,7 +30,7 @@ -export([file_term2binary/2, read_term/1, read_term_from_stream/2, get_dirs/1, get_path/1, werror/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %% reads a single term form a file - convert it to binary and %% dump it in a file diff --git a/lib/sasl/src/systools_make.erl b/lib/sasl/src/systools_make.erl index 6607f5fc79b1..299f6d6d56da 100644 --- a/lib/sasl/src/systools_make.erl +++ b/lib/sasl/src/systools_make.erl @@ -42,7 +42,7 @@ -include("systools.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(XREF_SERVER, systools_make). diff --git a/lib/ssh/src/Makefile b/lib/ssh/src/Makefile index 6e7f241a0f5a..33e6135179c9 100644 --- a/lib/ssh/src/Makefile +++ b/lib/ssh/src/Makefile @@ -129,7 +129,7 @@ INTERNAL_HRL_FILES = \ # FLAGS # ---------------------------------------------------- EXTRA_ERLC_FLAGS = +warn_unused_vars +nowarn_deprecated_callback +warn_obsolete_bool_op +nowarn_deprecated_catch -ERL_COMPILE_FLAGS += -I$(ERL_TOP)/lib/kernel/src \ +ERL_COMPILE_FLAGS += -I../../kernel/include -I$(ERL_TOP)/lib/kernel/src \ -pz $(EBIN) \ -pz $(ERL_TOP)/lib/public_key/ebin \ $(EXTRA_ERLC_FLAGS) diff --git a/lib/ssh/src/ssh.erl b/lib/ssh/src/ssh.erl index 813bfb56ffea..9183dc65ab2e 100644 --- a/lib/ssh/src/ssh.erl +++ b/lib/ssh/src/ssh.erl @@ -137,7 +137,7 @@ The directory could be changed with the option -include("ssh.hrl"). -include("ssh_connect.hrl"). -include_lib("public_key/include/public_key.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("kernel/include/inet.hrl"). -export([start/0, start/1, stop/0, diff --git a/lib/ssh/src/ssh_file.erl b/lib/ssh/src/ssh_file.erl index b7cb345774ef..0e0dcf0898b0 100644 --- a/lib/ssh/src/ssh_file.erl +++ b/lib/ssh/src/ssh_file.erl @@ -173,7 +173,7 @@ Clients uses all files stored in the [USERDIR](`m:ssh_file#USERDIR`) directory. -moduledoc(#{since => "OTP 21.2"}). -include_lib("public_key/include/public_key.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include("ssh.hrl"). diff --git a/lib/ssh/src/ssh_options.erl b/lib/ssh/src/ssh_options.erl index 4f32e320ef95..3420b1014643 100644 --- a/lib/ssh/src/ssh_options.erl +++ b/lib/ssh/src/ssh_options.erl @@ -26,7 +26,7 @@ -moduledoc false. -include("ssh.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -export([default/1, get_value/5, get_value/6, diff --git a/lib/ssh/src/ssh_sftp.erl b/lib/ssh/src/ssh_sftp.erl index b54687d1ebdc..44bdd1df812a 100644 --- a/lib/ssh/src/ssh_sftp.erl +++ b/lib/ssh/src/ssh_sftp.erl @@ -34,7 +34,7 @@ file transfer service available for SSH. -behaviour(ssh_client_channel). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include("ssh.hrl"). -include("ssh_xfer.hrl"). diff --git a/lib/ssh/src/ssh_sftpd.erl b/lib/ssh/src/ssh_sftpd.erl index 307f96b502c1..2a38bc31430d 100644 --- a/lib/ssh/src/ssh_sftpd.erl +++ b/lib/ssh/src/ssh_sftpd.erl @@ -33,7 +33,7 @@ Specifies a channel process to handle an SFTP subsystem. -behaviour(ssh_server_channel). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("kernel/include/logger.hrl"). -include("ssh.hrl"). -include("ssh_xfer.hrl"). diff --git a/lib/ssl/src/Makefile b/lib/ssl/src/Makefile index fe4a5f2bade9..b28fe8ac9fde 100644 --- a/lib/ssl/src/Makefile +++ b/lib/ssl/src/Makefile @@ -164,7 +164,7 @@ APPUP_TARGET= $(EBIN)/$(APPUP_FILE) # FLAGS # ---------------------------------------------------- EXTRA_ERLC_FLAGS = +warn_unused_vars -Werror +nowarn_deprecated_callback +warn_obsolete_bool_op +nowarn_deprecated_catch -ERL_COMPILE_FLAGS += -I$(ERL_TOP)/lib/kernel/src \ +ERL_COMPILE_FLAGS += -I$(ERL_TOP)/lib/kernel/src -I../../kernel/include \ -pz $(EBIN) \ -pz $(ERL_TOP)/lib/public_key/ebin \ $(EXTRA_ERLC_FLAGS) -DVSN=\"$(VSN)\" diff --git a/lib/ssl/src/ssl_manager.erl b/lib/ssl/src/ssl_manager.erl index 97565305ad62..610386f410b3 100644 --- a/lib/ssl/src/ssl_manager.erl +++ b/lib/ssl/src/ssl_manager.erl @@ -50,7 +50,7 @@ -include("ssl_internal.hrl"). -include("ssl_api.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -export_type([certdb_ref/0, db_handle/0]). diff --git a/lib/ssl/src/ssl_pem_cache.erl b/lib/ssl/src/ssl_pem_cache.erl index 2a9a3d0531fa..0154f9200c3b 100644 --- a/lib/ssl/src/ssl_pem_cache.erl +++ b/lib/ssl/src/ssl_pem_cache.erl @@ -51,7 +51,7 @@ -include("ssl_handshake.hrl"). -include("ssl_internal.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -record(state, { pem_cache, diff --git a/lib/ssl/src/ssl_pkix_db.erl b/lib/ssl/src/ssl_pkix_db.erl index d0a6022a2858..f569ae93430e 100644 --- a/lib/ssl/src/ssl_pkix_db.erl +++ b/lib/ssl/src/ssl_pkix_db.erl @@ -29,7 +29,7 @@ -include("ssl_internal.hrl"). -include_lib("public_key/include/public_key.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include_lib("kernel/include/logger.hrl"). -export([create/1, create_pem_cache/1, diff --git a/lib/stdlib/src/Makefile b/lib/stdlib/src/Makefile index ede4fa322b73..7bf39c7b9a29 100644 --- a/lib/stdlib/src/Makefile +++ b/lib/stdlib/src/Makefile @@ -221,13 +221,13 @@ opt: $(EBIN)/erl_id_trans.beam $(BOOTSTRAP_COMPILER)/ebin/erl_parse.beam: erl_parse.yrl $(gen_verbose) $(V_at)$(ERLC) -o $(BOOTSTRAP_COMPILER)/egen $(DETERMINISM_FLAG) erl_parse.yrl - $(V_at)$(ERLC) -o $(BOOTSTRAP_COMPILER)/ebin $(DETERMINISM_FLAG) $(BOOTSTRAP_COMPILER)/egen/erl_parse.erl + $(V_at)$(ERLC) -o $(BOOTSTRAP_COMPILER)/ebin $(ERL_COMPILE_FLAGS) $(DETERMINISM_FLAG) $(BOOTSTRAP_COMPILER)/egen/erl_parse.erl $(BOOTSTRAP_TOP)/lib/stdlib/egen/erl_parse.erl: erl_parse.yrl $(yecc_verbose)$(ERLC) $(YRL_FLAGS) -o$(BOOTSTRAP_TOP)/lib/stdlib/egen erl_parse.yrl $(BOOTSTRAP_COMPILER)/ebin/%.beam: %.erl - $(V_ERLC) -o $(BOOTSTRAP_COMPILER)/ebin $(DETERMINISM_FLAG) $< + $(V_ERLC) -o $(BOOTSTRAP_COMPILER)/ebin $(ERL_COMPILE_FLAGS) $(DETERMINISM_FLAG) $< $(EBIN)/erl_id_trans.beam: ../examples/erl_id_trans.erl $(V_ERLC) $(ERL_COMPILE_FLAGS) -o $(EBIN) $< diff --git a/lib/stdlib/src/epp.erl b/lib/stdlib/src/epp.erl index b7edb540787b..b4e4da911cb7 100644 --- a/lib/stdlib/src/epp.erl +++ b/lib/stdlib/src/epp.erl @@ -78,7 +78,7 @@ Module:format_error(ErrorDescriptor) -export([interpret_file_attribute/1]). -export([normalize_typed_record_fields/1,restore_typed_record_fields/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %%------------------------------------------------------------------------ diff --git a/lib/stdlib/src/erl_tar.erl b/lib/stdlib/src/erl_tar.erl index 50bfc03d9497..f99191348689 100644 --- a/lib/stdlib/src/erl_tar.erl +++ b/lib/stdlib/src/erl_tar.erl @@ -109,7 +109,7 @@ opens a tar file on a remote machine using an SFTP channel. add/3, add/4, format_error/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -include("erl_tar.hrl"). %% Converts the short error reason to a descriptive string. diff --git a/lib/stdlib/src/file_sorter.erl b/lib/stdlib/src/file_sorter.erl index 85a038a45412..fbfc4da0ad47 100644 --- a/lib/stdlib/src/file_sorter.erl +++ b/lib/stdlib/src/file_sorter.erl @@ -187,7 +187,7 @@ The possible values of `Reason` returned when an error occurs are: -dialyzer(no_improper_lists). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(CHUNKSIZE, 16384). -define(RUNSIZE, 524288). diff --git a/lib/stdlib/src/filelib.erl b/lib/stdlib/src/filelib.erl index 5e3b7ecc654a..fd1641821ec1 100644 --- a/lib/stdlib/src/filelib.erl +++ b/lib/stdlib/src/filelib.erl @@ -64,7 +64,7 @@ For more information about raw filenames, see the `m:file` module. %% For debugging/testing. -export([compile_wildcard/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(HANDLE_ERROR(Expr), try diff --git a/lib/stdlib/src/filename.erl b/lib/stdlib/src/filename.erl index f9b6cda0d27f..34c78a632ce8 100644 --- a/lib/stdlib/src/filename.erl +++ b/lib/stdlib/src/filename.erl @@ -121,7 +121,7 @@ the `m:file` module. %% Undocumented and unsupported exports. -export([append/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(IS_DRIVELETTER(Letter), (is_integer(Letter) diff --git a/lib/stdlib/src/shell.erl b/lib/stdlib/src/shell.erl index d2ac044747a3..e4a664a4e15e 100644 --- a/lib/stdlib/src/shell.erl +++ b/lib/stdlib/src/shell.erl @@ -37,6 +37,8 @@ -export([prompt_width/1, prompt_width/2]). -export([help/0,whereis/0]). +-include("file.hrl"). + -define(LINEMAX, 30). -define(CHAR_MAX, 60). -define(DEF_HISTORY, 20). @@ -1766,8 +1768,6 @@ read_records(FileOrModule, Opts0) -> Error end. --include_lib("kernel/include/file.hrl"). - find_file(Mod) when is_atom(Mod) -> case code:which(Mod) of File when is_list(File) -> diff --git a/lib/stdlib/test/beam_lib_SUITE.erl b/lib/stdlib/test/beam_lib_SUITE.erl index 9f9e00bc0350..37b34eec7b5b 100644 --- a/lib/stdlib/test/beam_lib_SUITE.erl +++ b/lib/stdlib/test/beam_lib_SUITE.erl @@ -34,6 +34,8 @@ -define(privdir, proplists:get_value(priv_dir, Conf)). -endif. +-include_lib("kernel/include/file.hrl"). + -export([all/0, suite/0,groups/0,init_per_suite/1, end_per_suite/1, init_per_group/2,end_per_group/2, normal/1, error/1, cmp/1, cmp_literals/1, strip/1, strip_add_chunks/1, otp_6711/1, @@ -549,8 +551,6 @@ otp_6711(Conf) when is_list(Conf) -> file:del_dir(Dir), ok. --include_lib("kernel/include/file.hrl"). - unwritable(Fname) -> {ok, Info} = file:read_file_info(Fname), Mode = Info#file_info.mode - 8#00200, diff --git a/lib/tftp/src/Makefile b/lib/tftp/src/Makefile index eb86fcb33121..4a34e2dc3458 100644 --- a/lib/tftp/src/Makefile +++ b/lib/tftp/src/Makefile @@ -72,7 +72,7 @@ APPUP_TARGET= $(EBIN)/$(APPUP_FILE) # FLAGS # ---------------------------------------------------- EXTRA_ERLC_FLAGS = +warn_unused_vars +nowarn_missing_spec_documented +warn_obsolete_bool_op +nowarn_deprecated_catch -ERL_COMPILE_FLAGS += \ +ERL_COMPILE_FLAGS += -I../../kernel/include \ -pz $(EBIN) \ $(EXTRA_ERLC_FLAGS) diff --git a/lib/tftp/src/tftp_file.erl b/lib/tftp/src/tftp_file.erl index a9a3b90d8a26..ef3042bb3f5d 100644 --- a/lib/tftp/src/tftp_file.erl +++ b/lib/tftp/src/tftp_file.erl @@ -44,7 +44,7 @@ %%% Defines %%%------------------------------------------------------------------- --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -record(state, {access, diff --git a/lib/tools/src/Makefile b/lib/tools/src/Makefile index afbd76fbe49d..8df687022294 100644 --- a/lib/tools/src/Makefile +++ b/lib/tools/src/Makefile @@ -80,7 +80,7 @@ CSS = $(PRIVDIR)/styles.css # ---------------------------------------------------- # FLAGS # ---------------------------------------------------- -ERL_COMPILE_FLAGS += -Werror +nowarn_deprecated_catch +ERL_COMPILE_FLAGS += -Werror +nowarn_deprecated_catch -I../../kernel/include ifeq ($(ERL_DETERMINISTIC),yes) DEP_SKIP_FILES = xref_parser.erl diff --git a/lib/tools/src/make.erl b/lib/tools/src/make.erl index 7d27fa237ef3..21b7c620cf9f 100644 --- a/lib/tools/src/make.erl +++ b/lib/tools/src/make.erl @@ -71,7 +71,7 @@ all other files in the current directory should be compiled with only the -export([all_or_nothing/0,all/0,all/1,files/1,files/2]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -define(MakeOpts,[noexec,load,netload,noload,emake]). diff --git a/lib/tools/src/xref_utils.erl b/lib/tools/src/xref_utils.erl index 469c7b7dbd10..3f2e54c42309 100644 --- a/lib/tools/src/xref_utils.erl +++ b/lib/tools/src/xref_utils.erl @@ -62,7 +62,7 @@ intersection/2, partition/2, relation/1, relation_to_family/1, restriction/2, set/1, to_external/1, type/1]). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %% %% Exported functions diff --git a/lib/xmerl/src/Makefile b/lib/xmerl/src/Makefile index b420ad8b9894..6ac294027aac 100644 --- a/lib/xmerl/src/Makefile +++ b/lib/xmerl/src/Makefile @@ -127,6 +127,7 @@ TARGET_FILES = $(MODULES:%=$(EBIN)/%.$(EMULATOR)) $(APP_TARGET) $(APPUP_TARGET) # ---------------------------------------------------- ERL_COMPILE_FLAGS += \ -I ../include \ + -I../../kernel/include \ +warn_unused_vars +warn_obsolete_bool_op # +bin_opt_info diff --git a/lib/xmerl/src/xmerl_eventp.erl b/lib/xmerl/src/xmerl_eventp.erl index 8808c32c714a..64d3e1344fd6 100644 --- a/lib/xmerl/src/xmerl_eventp.erl +++ b/lib/xmerl/src/xmerl_eventp.erl @@ -38,7 +38,7 @@ Each front-end contains more elaborate settings of -include("xmerl.hrl"). -include("xmerl_internal.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -doc "Record `#xmlElement{}`". -type xmlElement() :: #xmlElement{}. diff --git a/lib/xmerl/src/xmerl_scan.erl b/lib/xmerl/src/xmerl_scan.erl index 60dda6b9e668..6abf1e8d2a57 100644 --- a/lib/xmerl/src/xmerl_scan.erl +++ b/lib/xmerl/src/xmerl_scan.erl @@ -56,7 +56,7 @@ See also the %-define(debug, 1). -include("xmerl.hrl"). % record def, macros -include("xmerl_internal.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). -compile({nowarn_hidden_doc, [xmerl_scanner/0]}). -doc hidden. diff --git a/lib/xmerl/src/xmerl_xsd.erl b/lib/xmerl/src/xmerl_xsd.erl index 5ef45df4bef4..0249f2370413 100644 --- a/lib/xmerl/src/xmerl_xsd.erl +++ b/lib/xmerl/src/xmerl_xsd.erl @@ -37,7 +37,7 @@ An XML structure is validated by [`xmerl_xsd:validate/[2,3]`](`validate/2`). -include("xmerl.hrl"). -include("xmerl_internal.hrl"). -include("xmerl_xsd.hrl"). --include_lib("kernel/include/file.hrl"). +-include("file.hrl"). %%---------------------------------------------------------------------- %% External exports diff --git a/lib/xmerl/test/xmerl_std_SUITE.erl b/lib/xmerl/test/xmerl_std_SUITE.erl index 45a50ed5775b..1008e2aab9dd 100644 --- a/lib/xmerl/test/xmerl_std_SUITE.erl +++ b/lib/xmerl/test/xmerl_std_SUITE.erl @@ -31,6 +31,8 @@ %%-include("xmerl.hrl"). -include_lib("xmerl/include/xmerl.hrl"). +-include_lib("kernel/include/file.hrl"). + -define(ibm_dir,"ibm"). -define(sun_dir,"sun"). -define(japanese_dir,"japanese"). @@ -9921,7 +9923,6 @@ rm_files([F|Fs]) -> end, rm_files(Fs). --include_lib("kernel/include/file.hrl"). change_mode(Files) -> change_mode3(Files). change_mode2(Dir)->