llvm-project/clang/lib/Parse
Serge Pavlov a633da5391 [FPEnv] Partially implement #pragma STDC FENV_ROUND
This change implements pragma STDC FENV_ROUND, which is introduced by
the extension to standard (TS 18661-1). The pragma is implemented only
in frontend, it sets apprpriate state of FPOptions stored in Sema. Use
of these bits in constant evaluation adn/or code generator is not in the
scope of this change.

Parser issues warning on unsuppored pragma when it encounteres pragma
STDC FENV_ROUND, however it makes syntax checks and updates Sema state
as if the pragma were supported.

Primary purpose of the partial implementation is to facilitate
development of non-default floating poin environment. Previously a
developer cannot set non-default rounding mode in sources, this mades
preparing tests for say constant evaluation  substantially complicated.

Differential Revision: https://reviews.llvm.org/D86921
2020-09-04 16:47:10 +07:00
..
CMakeLists.txt [openmp] Base of tablegen generated OpenMP common declaration 2020-06-23 10:32:32 -04:00
ParseAST.cpp [Support] Add TimeTraceScope constructor without detail arg 2019-12-11 14:32:21 +00:00
ParseCXXInlineMethods.cpp DR458: Search template parameter scopes in the right order. 2020-06-23 17:14:33 -07:00
ParseDecl.cpp Add new warning for compound punctuation tokens that are split across macro expansions or split by whitespace. 2020-08-28 13:35:50 -07:00
ParseDeclCXX.cpp Add new warning for compound punctuation tokens that are split across macro expansions or split by whitespace. 2020-08-28 13:35:50 -07:00
ParseExpr.cpp Add new warning for compound punctuation tokens that are split across macro expansions or split by whitespace. 2020-08-28 13:35:50 -07:00
ParseExprCXX.cpp [clang] Provide a more specific diagnostic for a misplaced lambda capture-default. 2020-07-18 20:35:16 +01:00
ParseInit.cpp [clang][CodeComplete] Support for designated initializers 2020-01-28 16:34:15 +01:00
ParseObjc.cpp [NFC] Refactoring PropertyAttributeKind for ObjCPropertyDecl and ObjCDeclSpec. 2020-04-23 17:21:25 -04:00
ParseOpenMP.cpp [OPENMP]Redesign of OMPExecutableDirective/OMPDeclarativeDirective representation. 2020-08-06 12:25:19 -04:00
ParsePragma.cpp [FPEnv] Partially implement #pragma STDC FENV_ROUND 2020-09-04 16:47:10 +07:00
ParseStmt.cpp [FPEnv] Partially implement #pragma STDC FENV_ROUND 2020-09-04 16:47:10 +07:00
ParseStmtAsm.cpp Fix some typos (unkown -> unknown); NFC 2020-07-02 06:41:05 -04:00
ParseTemplate.cpp DR458: Search template parameter scopes in the right order. 2020-06-23 17:14:33 -07:00
ParseTentative.cpp Don't form a 'context-independent expr' reference to a member during 2020-07-27 19:38:22 -07:00
Parser.cpp [FPEnv] Partially implement #pragma STDC FENV_ROUND 2020-09-04 16:47:10 +07:00