Главная » Просмотр файлов » Стандарт языка Си С99 TC

Стандарт языка Си С99 TC (1113411), страница 83

Файл №1113411 Стандарт языка Си С99 TC (Стандарт языка Си С99 + TC) 83 страницаСтандарт языка Си С99 TC (1113411) страница 832019-04-24СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 83)

or −>,address &, or indirection * operator or a pointer cast in creating an address constant(6.6).— An identifier for an object is declared with no linkage and the type of the object isincomplete after its declarator, or after its init-declarator if it has an initializer (6.7).— A function is declared at block scope with an explicit storage-class specifier otherthan extern (6.7.1).— A structure or union is defined as containing no named members (6.7.2.1).§J.2Portability issues495ISO/IEC 9899:TC3Committee Draft — Septermber 7, 2007WG14/N1256— An attempt is made to access, or generate a pointer to just past, a flexible arraymember of a structure when the referenced object provides no elements for that array(6.7.2.1).— When the complete type is needed, an incomplete structure or union type is notcompleted in the same scope by another declaration of the tag that defines the content(6.7.2.3).— An attempt is made to modify an object defined with a const-qualified type throughuse of an lvalue with non-const-qualified type (6.7.3).— An attempt is made to refer to an object defined with a volatile-qualified type throughuse of an lvalue with non-volatile-qualified type (6.7.3).— The specification of a function type includes any type qualifiers (6.7.3).— Two qualified types that are required to be compatible do not have the identicallyqualified version of a compatible type (6.7.3).— An object which has been modified is accessed through a restrict-qualified pointer toa const-qualified type, or through a restrict-qualified pointer and another pointer thatare not both based on the same object (6.7.3.1).— A restrict-qualified pointer is assigned a value based on another restricted pointerwhose associated block neither began execution before the block associated with thispointer, nor ended before the assignment (6.7.3.1).— A function with external linkage is declared with an inline function specifier, but isnot also defined in the same translation unit (6.7.4).— Two pointer types that are required to be compatible are not identically qualified, orare not pointers to compatible types (6.7.5.1).— The size expression in an array declaration is not a constant expression and evaluatesat program execution time to a nonpositive value (6.7.5.2).— In a context requiring two array types to be compatible, they do not have compatibleelement types, or their size specifiers evaluate to unequal values (6.7.5.2).— A declaration of an array parameter includes the keyword static within the [ and] and the corresponding argument does not provide access to the first element of anarray with at least the specified number of elements (6.7.5.3).— A storage-class specifier or type qualifier modifies the keyword void as a functionparameter type list (6.7.5.3).— In a context requiring two function types to be compatible, they do not havecompatible return types, or their parameters disagree in use of the ellipsis terminatoror the number and type of parameters (after default argument promotion, when thereis no parameter type list or when one type is specified by a function definition with an496Portability issues§J.2WG14/N1256Committee Draft — Septermber 7, 2007ISO/IEC 9899:TC3identifier list) (6.7.5.3).— The value of an unnamed member of a structure or union is used (6.7.8).— The initializer for a scalar is neither a single expression nor a single expressionenclosed in braces (6.7.8).— The initializer for a structure or union object that has automatic storage duration isneither an initializer list nor a single expression that has compatible structure or uniontype (6.7.8).— The initializer for an aggregate or union, other than an array initialized by a stringliteral, is not a brace-enclosed list of initializers for its elements or members (6.7.8).— An identifier with external linkage is used, but in the program there does not existexactly one external definition for the identifier, or the identifier is not used and thereexist multiple external definitions for the identifier (6.9).— A function definition includes an identifier list, but the types of the parameters are notdeclared in a following declaration list (6.9.1).— An adjusted parameter type in a function definition is not an object type (6.9.1).— A function that accepts a variable number of arguments is defined without aparameter type list that ends with the ellipsis notation (6.9.1).— The } that terminates a function is reached, and the value of the function call is usedby the caller (6.9.1).— An identifier for an object with internal linkage and an incomplete type is declaredwith a tentative definition (6.9.2).— The token defined is generated during the expansion of a #if or #elifpreprocessing directive, or the use of the defined unary operator does not matchone of the two specified forms prior to macro replacement (6.10.1).— The #include preprocessing directive that results after expansion does not matchone of the two header name forms (6.10.2).— The character sequence in an #include preprocessing directive does not start with aletter (6.10.2).— There are sequences of preprocessing tokens within the list of macro arguments thatwould otherwise act as preprocessing directives (6.10.3).— The result of the preprocessing operator # is not a valid character string literal(6.10.3.2).— The result of the preprocessing operator ## is not a valid preprocessing token(6.10.3.3).§J.2Portability issues497ISO/IEC 9899:TC3Committee Draft — Septermber 7, 2007WG14/N1256— The #line preprocessing directive that results after expansion does not match one ofthe two well-defined forms, or its digit sequence specifies zero or a number greaterthan 2147483647 (6.10.4).— A non-STDC #pragma preprocessing directive that is documented as causingtranslation failure or some other form of undefined behavior is encountered (6.10.6).— A #pragma STDC preprocessing directive does not match one of the well-definedforms (6.10.6).— The name of a predefined macro, or the identifier defined, is the subject of a#define or #undef preprocessing directive (6.10.8).— An attempt is made to copy an object to an overlapping object by use of a libraryfunction, other than as explicitly allowed (e.g., memmove) (clause 7).— A file with the same name as one of the standard headers, not provided as part of theimplementation, is placed in any of the standard places that are searched for includedsource files (7.1.2).— A header is included within an external declaration or definition (7.1.2).— A function, object, type, or macro that is specified as being declared or defined bysome standard header is used before any header that declares or defines it is included(7.1.2).— A standard header is included while a macro is defined with the same name as akeyword (7.1.2).— The program attempts to declare a library function itself, rather than via a standardheader, but the declaration does not have external linkage (7.1.2).— The program declares or defines a reserved identifier, other than as allowed by 7.1.4(7.1.3).— The program removes the definition of a macro whose name begins with anunderscore and either an uppercase letter or another underscore (7.1.3).— An argument to a library function has an invalid value or a type not expected by afunction with variable number of arguments (7.1.4).— The pointer passed to a library function array parameter does not have a value suchthat all address computations and object accesses are valid (7.1.4).— The macro definition of assert is suppressed in order to access an actual function(7.2).— The argument to the assert macro does not have a scalar type (7.2).— The CX_LIMITED_RANGE, FENV_ACCESS, or FP_CONTRACT pragma is used inany context other than outside all external declarations or preceding all explicit498Portability issues§J.2WG14/N1256Committee Draft — Septermber 7, 2007ISO/IEC 9899:TC3declarations and statements inside a compound statement (7.3.4, 7.6.1, 7.12.2).— The value of an argument to a character handling function is neither equal to the valueof EOF nor representable as an unsigned char (7.4).— A macro definition of errno is suppressed in order to access an actual object, or theprogram defines an identifier with the name errno (7.5).— Part of the program tests floating-point status flags, sets floating-point control modes,or runs under non-default mode settings, but was translated with the state for theFENV_ACCESS pragma ‘‘off’’ (7.6.1).— The exception-mask argument for one of the functions that provide access to thefloating-point status flags has a nonzero value not obtained by bitwise OR of thefloating-point exception macros (7.6.2).— The fesetexceptflag function is used to set floating-point status flags that werenot specified in the call to the fegetexceptflag function that provided the valueof the corresponding fexcept_t object (7.6.2.4).— The argument to fesetenv or feupdateenv is neither an object set by a call tofegetenv or feholdexcept, nor is it an environment macro (7.6.4.3, 7.6.4.4).— The value of the result of an integer arithmetic or conversion function cannot berepresented (7.8.2.1, 7.8.2.2, 7.8.2.3, 7.8.2.4, 7.20.6.1, 7.20.6.2, 7.20.1).— The program modifies the string pointed to by the value returned by the setlocalefunction (7.11.1.1).— The program modifies the structure pointed to by the value returned by thelocaleconv function (7.11.2.1).— A macro definition of math_errhandling is suppressed or the program definesan identifier with the name math_errhandling (7.12).— An argument to a floating-point classification or comparison macro is not of realfloating type (7.12.3, 7.12.14).— A macro definition of setjmp is suppressed in order to access an actual function, orthe program defines an external identifier with the name setjmp (7.13).— An invocation of the setjmp macro occurs other than in an allowed context(7.13.2.1).— The longjmp function is invoked to restore a nonexistent environment (7.13.2.1).— After a longjmp, there is an attempt to access the value of an object of automaticstorage class with non-volatile-qualified type, local to the function containing theinvocation of the corresponding setjmp macro, that was changed between thesetjmp invocation and longjmp call (7.13.2.1).§J.2Portability issues499ISO/IEC 9899:TC3Committee Draft — Septermber 7, 2007WG14/N1256— The program specifies an invalid pointer to a signal handler function (7.14.1.1).— A signal handler returns when the signal corresponded to a computational exception(7.14.1.1).— A signal occurs as the result of calling the abort or raise function, and the signalhandler calls the raise function (7.14.1.1).— A signal occurs other than as the result of calling the abort or raise function, andthe signal handler refers to an object with static storage duration other than byassigning a value to an object declared as volatile sig_atomic_t, or calls anyfunction in the standard library other than the abort function, the _Exit function,or the signal function (for the same signal number) (7.14.1.1).— The value of errno is referred to after a signal occurred other than as the result ofcalling the abort or raise function and the corresponding signal handler obtaineda SIG_ERR return from a call to the signal function (7.14.1.1).— A signal is generated by an asynchronous signal handler (7.14.1.1).— A function with a variable number of arguments attempts to access its varyingarguments other than through a properly declared and initialized va_list object, orbefore the va_start macro is invoked (7.15, 7.15.1.1, 7.15.1.4).— The macro va_arg is invoked using the parameter ap that was passed to a functionthat invoked the macro va_arg with the same parameter (7.15).— A macro definition of va_start, va_arg, va_copy, or va_end is suppressed inorder to access an actual function, or the program defines an external identifier withthe name va_copy or va_end (7.15.1).— The va_start or va_copy macro is invoked without a corresponding invocationof the va_end macro in the same function, or vice versa (7.15.1, 7.15.1.2, 7.15.1.3,7.15.1.4).— The type parameter to the va_arg macro is not such that a pointer to an object ofthat type can be obtained simply by postfixing a * (7.15.1.1).— The va_arg macro is invoked when there is no actual next argument, or with aspecified type that is not compatible with the promoted type of the actual nextargument, with certain exceptions (7.15.1.1).— The va_copy or va_start macro is called to initialize a va_list that waspreviously initialized by either macro without an intervening invocation of theva_end macro for the same va_list (7.15.1.2, 7.15.1.4).— The parameter parmN of a va_start macro is declared with the registerstorage class, with a function or array type, or with a type that is not compatible withthe type that results after application of the default argument promotions (7.15.1.4).500Portability issues§J.2WG14/N1256Committee Draft — Septermber 7, 2007ISO/IEC 9899:TC3— The member designator parameter of an offsetof macro is an invalid rightoperand of the .

Характеристики

Тип файла
PDF-файл
Размер
3,61 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6390
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее