Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

odroidgoA: scripts/dtc: Remove redundant YYLOC global declaration (cherry-pick from upstream) #65

Open
wants to merge 1 commit into
base: odroidgoA-v2017.09
Choose a base branch
from

Conversation

glebm
Copy link

@glebm glebm commented Nov 22, 2020

Cherry-pick u-boot/u-boot@018921ee79 from upstream.

Fix compilation with -fno-common (default in GCC 10)

Note that this also updates scripts/dtc/dtc-lexer.lex.c_shipped, which no longer exists in upstream

commit e33a814e772cdc36436c8c188d8c42d019fda639 upstream.

gcc 10 will default to -fno-common, which causes this error at link
time:

  (.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here

This is because both dtc-lexer as well as dtc-parser define the same
global symbol yyloc. Before with -fcommon those were merged into one
defintion. The proper solution would be to to mark this as "extern",
however that leads to:

  dtc-lexer.l:26:16: error: redundant redeclaration of 'yylloc' [-Werror=redundant-decls]
   26 | extern YYLTYPE yylloc;
      |                ^~~~~~
In file included from dtc-lexer.l:24:
dtc-parser.tab.h:127:16: note: previous declaration of 'yylloc' was here
  127 | extern YYLTYPE yylloc;
      |                ^~~~~~
cc1: all warnings being treated as errors

which means the declaration is completely redundant and can just be
dropped.

Signed-off-by: Dirk Mueller <[email protected]>
Signed-off-by: David Gibson <[email protected]>
[robh: cherry-pick from upstream]
Cc: [email protected]
Signed-off-by: Rob Herring <[email protected]>
[nc: Also apply to dtc-lexer.lex.c_shipped due to a lack of
     e039139be8c2, where dtc-lexer.l started being used]
Signed-off-by: Nathan Chancellor <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Change-Id: I7f299451e99aab09375883546e47505ec0937c26
@glebm glebm changed the title scripts/dtc: Remove redundant YYLOC global declaration [odroidgoA-v2017.09] scripts/dtc: Remove redundant YYLOC global declaration Nov 22, 2020
@glebm glebm changed the title [odroidgoA-v2017.09] scripts/dtc: Remove redundant YYLOC global declaration scripts/dtc: Remove redundant YYLOC global declaration Nov 22, 2020
glebm added a commit to glebm/batocera.linux that referenced this pull request Nov 22, 2020
@glebm glebm changed the title scripts/dtc: Remove redundant YYLOC global declaration scripts/dtc: Remove redundant YYLOC global declaration (cherry-pick from upstream) Nov 22, 2020
@glebm glebm changed the title scripts/dtc: Remove redundant YYLOC global declaration (cherry-pick from upstream) odroidgoA: scripts/dtc: Remove redundant YYLOC global declaration (cherry-pick from upstream) Nov 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants